jjzjj

java - java中的atoi使用charAt

我知道执行此操作的一种解决方案如下:Stringtmp="12345";intresult=0;for(inti=0;i我不明白的是为什么:chardigit=(char)(tmp.charAt(i)-'0');这如何转换成数字? 最佳答案 chardigit=(char)(tmp.charAt(i)-'0');在asciitable,从'0'到'9'的字符是连续的。因此,如果您知道tmp.charAt(i)将返回0和9之间的字符,则减去0将返回从零开始的偏移量,即该字符代表的数字。 关

Java String/Char charAt() 比较

我看到了您可以使用charAt()方法进行的各种比较。但是,我真的不能理解其中的一些。Stringstr="asdf";str.charAt(0)=='-';//Whatdoesitmeanwhenit'sequalto'-'?charc='3';if(c如有任何帮助,我们将不胜感激。 最佳答案 //Whatdoesitmeanwhenit'sequalto'-'?每个字母和符号都是一个字符。您可以查看字符串的第一个字符并检查是否匹配。在这种情况下,您获取第一个字符并查看它是否是减号字符。这个减号是(char)45见下文//Howa

java - 为什么我得到 "Duplicate modifier for the type Test"以及如何修复它

我试图创建一个方法,如果给定的“字符串”是字谜,则返回true。不幸的是,我什至无法测试它,我不知道出了什么问题。左边的标记说:Multiplemarkersatthisline-Breakpoint:Test-DuplicatemodifierforthetypeTest这里是源代码:packagezajecia19;importjava.io.BufferedReader;importjava.io.FileReader;importjava.util.HashMap;publicpublicclassTest{publicstaticbooleanAnagraamy(String

java - 使用 long 的字符串 CharAt 方法

我想在一个非常大的字符串的特定位置找到字符。但是我无法使用charAt()方法,因为范围超出了int的范围。对此有什么调整吗? 最佳答案 在Java中,字符串由字符数组支持。数组的理论大小受限于int的最大值,因此不可能有超过231-1个字符开头的字符串。要克服这个问题,您可以创建自己的字符串类,使用多个数组或字符串作为存储。 关于java-使用long的字符串CharAt方法,我们在StackOverflow上找到一个类似的问题: https://stack

java - for 循环与 if-else 语句中的代码

我试图解决这个问题:https://leetcode.com/problems/longest-substring-without-repeating-characters/以下代码在44毫秒内通过了所有测试。for(inti=0;i=first){first=mp.get(s.charAt(i))+1;}mp.put(s.charAt(i),i);//max=Math.max(max,i-first+1);}max=Math.max(max,i-first+1);}但下面的代码只用了20毫秒就通过了所有测试。for(inti=0;i=first){first=mp.get(s.cha

java - 连接字符以形成字符串会给出不同的结果

为什么,当我使用下面的操作对字符求和时,它返回的是数字而不是字符?它不应该给出相同的结果吗?ret+=...;//returnsnumbersret=ret+...;//returnschars下面的代码复制了字符:doubleChar("The")→"TThhee"publicStringdoubleChar(Stringstr){Stringret="";for(inti=0;i 最佳答案 下面表达式的结果ret+str.charAt(i)+str.charAt(i);是字符串拼接的结果。TheJavalanguagespeci

java - 使用 charAt() 查找空格、换行符和制表符

我正在尝试检查当前字符位置是否有空格、换行符或制表符。空格有效,但制表符和换行符无效。想想看,我正在为那些使用转义符,而只是为一个空间使用一个常规空间...在某个位置找到它们的正确方法是什么?if(String.valueOf(txt.charAt(strt)).equals("")||txt.charAt(strt)=='\r'||txt.charAt(strt)=='\n'||txt.charAt(strt)=='\t'){//dostuff} 最佳答案 这对我有用:charc=txt.charAt(strt);if(c==''

java - IndexOutOfBoundsException: charAt: 0 >= length 0 在某些版本的 Android 上

我正在尝试使用Java和Eclipse制作应用程序(目前使用B4A,但想扩展我的可用资源和制作库的能力)当尝试使用fragment实现对话框时,我遵循了示例here.我一直在努力05-0613:40:21.060:E/SensorManager(18538):threadstart05-0613:40:21.105:E/Dynamiclayout(18538):java.lang.IndexOutOfBoundsException:charAt:0>=length0我试过调试,但调试器永远不会因任何错误而停止(而且我是这个调试器的新手,所以不确定如何解决这个问题)。有没有人看到异常是在

java - 我应该使用 charAt 还是 toCharArray?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭8年前。Improvethisquestion以下哪个选项被认为是遍历String的良好做法?我们应该使用charAt还是转换为char数组?我正在寻找所有方面的答案,包括性能和使用的空间publicstaticvoiddoChose(Stringstr){for(inti=0;i

java - java中如何读取字符串中的字符

我是Java的新手,如果这是一个明显的问题,我很抱歉。我正在尝试逐个字符地读取字符串以创建树节点。例如输入"HJIOADH"节点是HJIOADH我注意到了charnode=reader.next().charAt(0);IcangetthefirstcharHbythischarnode=reader.next().charAt(1);IcangetthesecondcharJbythis我可以使用循环获取所有字符吗?喜欢foritonnode=reader.next().charAt(i)我试过了,但没用。我应该怎么做?非常感谢您的帮助。扫描仪阅读器=新扫描仪(System.in);