gpt4 book ai didi

java - Java 中使用 char[] 方法的特殊字符

转载 作者:行者123 更新时间:2023-12-02 05:15:12 25 4
gpt4 key购买 nike

我对 char[] 方法有一些问题。我正在研究java中的一些代码块。我需要在我的程序中使用土耳其语字符。但最初是用俄语编码的。

这里是原始代码

                TableRow row = null;
int w = 0;
for (char q = 'A'; q <= 'Я'; q++)
{
if (w++ % columns == 0) {
row = new TableRow(AlphabetActivity.this);
addView(row);
}
final Button button = new Button(AlphabetActivity.this);
button.setBackgroundResource(R.drawable.selector_dashboard_button);
button.setText("" + q);
button.setTag(q);

用这个代码我得到了这个结果 /image/AqUCO.jpg

当我像这样改变这部分时

for (char q = 'a'; q <= 'z'; q++)

我得到了这个结果 /image/dZcZN.jpg

当我像这样改变时(这次我用键盘(手动)写“A”,我的意思不是原来的“A”)

for (char q = 'A'; q <= 'Я'; q++)

我有这个 /image/9a6ni.jpg

我真的不明白我在处理什么。如果我使用这个(第一个代码)

for (char q = 'a'; q <= 'z'; q++)

并删除了此内容

int w = 0;
if (w++ % columns == 0)

我有这样的所有拉丁字母 https://imgur.com/7NdP0kU

但我需要土耳其字符。

我尝试了一些在 stackoverflow 上看到的解决方案,如下

char[] q ={ 'a', 'b', 'ç', 'd', 'e' };
char[] q = "abcdefghijklmnopqrstuvwxyz".toCharArray();

还有更多,但是当我尝试这些代码时,我得到了这个 /image/W4Jei.jpg

有高手可以帮助我吗?

最佳答案

I really didn't understand what i am deal with.

显示为 A 的原始源字符无疑是 Unicode 字符 U+0410,“西里尔大写字母 A”,而不是 U+0041,“拉丁大写字母 A”。后者是您在美国或西欧键盘上使用移动的“A”键生成的。您可以通过打印出相关字符的数值来验证这一点。

when i try these codes i getting this [garbage]

这是一个完全不同的问题:您正在打印数组的字符串值(通过 q.toString() 获得),这与包含数组字符的字符串不同(String.valueOf(q))。

只要您在保存文件时使用编译器期望的字符编码(可能是 UTF-8),并且该编码支持您想要的字符(UTF-8 支持所有 Unicode 字符),您应该能够将它们逐字写入源代码,并成功打印出来。

关于java - Java 中使用 char[] 方法的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56300623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com