我没有找到任何答案..如果我有:String s = "How are you"?我怎么能把它分成两个字符串,所以第一个字符串包含from 0..s.length()/2和第二个字符串来自s.length()/2+1..s.length()?
谢谢!
aio*_*obe 22
这应该做:
String s = "How are you?";
String first = s.substring(0, s.length() / 2); // gives "How ar"
String second = s.substring(s.length() / 2); // gives "e you?"
Run Code Online (Sandbox Code Playgroud)
String.substring(int i) 使用一个参数返回从位置开始的子字符串 i
String.substring(int i, int j)带有两个参数返回从开头到i结尾的子串j-1.
(注意,如果字符串的长度是奇数,second则将比first整数除法中的舍入更多一个字符.)
你可以使用'substring(start,end)',但当然检查string之前是否为null:
String first = s.substring(0, s.length() / 2);
String second = s.substring(s.length() / 2);
Run Code Online (Sandbox Code Playgroud)
你期待奇数长度的字符串吗?在这种情况下,您必须添加逻辑以正确处理此案例.
String s0 = "How are you?";
String s1 = s0.subString(0, s0.length() / 2);
String s2 = s0.subString(s0.length() / 2);
Run Code Online (Sandbox Code Playgroud)
只要s0不为空.
编辑
这将适用于奇数长度字符串,因为您没有向任一索引添加1.令人惊讶的是,它甚至适用于零长度字符串"".
| 归档时间: |
|
| 查看次数: |
41543 次 |
| 最近记录: |