黑马程序员技术交流社区
标题:
java API问题
[打印本页]
作者:
徐文豪
时间:
2015-5-26 22:45
标题:
java API问题
public static void main(String[] args) {
int [] arr = { 37, 92, 54, 18, 76};
// 第一种方法
for (int x = 0; x < arr.length; x++) {
if (arr[x] == 18) {
System.out.println("18的索引值是:"+x);
}
}
// 第二种方法
System.out.println(Arrays.toString(arr).indexOf("18"));
第二种方法 为什么输出的是13? 这样做行不行? 还有别的什么方法吗?
作者:
Amu
时间:
2015-5-26 22:47
可以用二分查找法那样更有效率啊
作者:
徐文豪
时间:
2015-5-26 23:06
Amu 发表于 2015-5-26 22:47
可以用二分查找法那样更有效率啊
用二分要先排序 排完序之后数组跟原来的都乱了 角标位置都变了
作者:
仅此一抹心醉
时间:
2015-5-26 23:09
使用System.out.println(Arrays.toString(arr));这个方法获得是一个字符串,[37, 92, 54, 18, 76],jvm会认为[是一个字符,逗号是一个字符,空格也是一个字符,你查找18这个字符,jvm就会查找到1
这个字符第一次出现的位置,然后返回了
作者:
lizhi
时间:
2015-5-26 23:12
这样肯定不行的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2