【建站服务】博罗设计网页公司-域名申请
作者: 风兰 . 阅读量: 4 . 发表时间:2022-09-21 02:35:38
上往建站提供服务器空间服务商,百度快照排名,网站托管,百度推广运营,致力于设计外包服务与源代码定制开发,360推广,搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。
博罗设计网页公司

组这里有一个问题容易搞不清楚的。
在 java 中,关于数组描述正确的是( B,D )
A.数组中的索引下标从1开始
B.存储在数组当中的数据都属于同一数据类型
C.通过数组名.length()能获得数组的长度
D.数组的最大索引下标是数组的长度减1
比如说一个 int 类型的数组:
int[] arr = { 'a', 25, 45, 78, 'z' };
System.out.println(Arrays.toString(arr));
输出结果是:[97, 25, 45, 78, 122]
存放进去的 char 类型的字符会自动转为 int 类型的 ASCII 码。
上面的代码中就将 a 转成了 97,z 转成了 122。
所以数组只能存放同一类型的数据是正确的。
D选项。
数组的长度固定时,为了防止下标越界,应该在索引的时候将下标减一。
int[] arr = { 'a', 25, 45, 78, 'z' };
int arrs = arr[5];
System.out.println(Arrays.toString(arr));
System.out.println(arrs);
上面的代码中数组总长度为 5,因为数组是索引是从 0 开始取值,索引取值为5的时候就会产生下标越界异常,在这里最大的索引应当为 4。
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5
tfbyly
tfbyly
905***717@qq.com
4年前 (2018-04-18)
路过顺便打酱油
782***197@qq.com
15
对于上面的冒泡排序,其实没必要那么复杂,最终得到的是结果,我们只需要理解冒泡排序要排多少次就可以了。比如 1-9 比较,1-2,2-3 等,需要 9 次出一个最大最小数,然后再次去比较出第二个数字,所有自然想到了嵌套循环;代码如下:
//冒泡
int[] num={2,4,9,1,6,7,9,12,63,4,87,54,67,65,4};
int totle;
for(int i=0;i<num.length;i++){
for(int j=0;j<i;j++){
if(num[j]>num[i]){
totle=num[j];
num[j]=num[i];
num[i]=totle;
}
}
}
for(int i=num.length-1;0<=i;i--){
for(int j=i;0<=j;j--){
if(num[j]>num[i]){
totle=num[j];
num[j]=num[i];
num[i]=totle;
}
}
}
for (int k : num) {
System.out.print(k+"===");
}
两次循环代码都可以出结果,区别在于一个是累加,一个是累减,随便去掉一个循环代码还是能得到结果
路过顺便打酱油
路过顺便打酱油
782***197@qq.com
3年前 (2019-07-18)
好劲的维
pal***@qq.com
18
Java.util.Arrays 类的排序拓展
java.util.Arrays.sort 只可以用于按升序排列数组,若按降序排序可以使用 Arrays.sort(数组,Collections.reverseOrder())。
调用的其实 Arrays.sort 的静态方法之一 Arrays.sort(Integer[] a,Comparator cmp)。
对于 Collections.reverseOrder() 官方解释:
reverseOrder() 方法用于获取一个比较有否就实现 Comparable 接口的对象的集合的自然顺序相反。
import java.util.Arrays;
import java.util.Collections;
public class Main {
public static void main(String []args) {
Double[] list_double = new Double[10];
list_double[0] = 1.2;
list_double[1] = 2.2;
list_double[2] = 8.2;
list_double[3] = 4.2;
list_double[4] = 7.2;
list_double[5] = 6.2;
list_double[6] = 5.2;
list_double[7] = 4.2;
list_double[8] = 9.2;
list_double[9] = 10.2;
java.util.Arrays.sort(list_double);
System.out.println("升序:");
for(double emp:list_double)
{
System.out.println(emp);
}
Arrays.sort(list_double,Collections.reverseOrder());
System.out.println("降序:");
for(double emp:list_double)
{
System.out.println(emp);
}
}
}
上往建站提供搭建网站,域名注册,官网备案服务,网店详情页设计,企业网店,专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管,网页美工排版,致力于域名申请,竞价托管,软文推广,全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机,网站推广,百度竞价托管,网站建设,上网建站推广服务,网络公司有哪些等业务,专业团队服务,效果好。
服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)
关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站



输出结果:
冰糕
257***9843@qq.com
参考地址
支上上
849***107@qq.com
数组容量如果不够用可以使用 Arrays.copyOf() 进行扩容:
其第一个形参指的是需要扩容的数组,后面是扩容后的大小,其内部实现其实是使用了 System.arrayCopy(); 在内部重新创建一个长度为 newLength 类型是 E 的数组。
import java.util.Arrays; public class Main { public static void main(String[] args) { int[] a= {10,20,30,40,50}; a= Arrays.copyOf(a,a.length+1); for(int i=0;i<a.length;i++) { System.out.println(a[i]); } }}默认补 0,输出结果为: 10 20 30 40 50 0
支上上
849***107@qq.com
支上上
849***107@qq.com
数组实现的一个小游戏
程序随机产生5个按一定顺序排列的字符,作为猜测结果。
玩家可以猜测多次,每猜一次,若猜测的完全正确则游戏结束,并计算玩家的游戏得分并输出。若没有猜对,则提示猜测结果,如猜对了几个字符,以及猜对了几个字符的位置信息,并提示玩家游戏继续。若中途输入EXIT,则游戏提前结束
import java.util.Scanner;//猜字符小游戏public class Guessing { private static Scanner scan; // 主方法 public static void main(String[] args) { scan = new Scanner(System.in); char[] chs = generate(); System.out.println(chs); int count = 0; // 猜错的次数 while (true) { // 自造死循环 System.out.println("猜吧!"); String str = scan.next().toUpperCase(); // 获取用户输入的字符串 if (str.equals("EXIT")) { // 判断字符串内容相等 System.out.println("下次再来吧!"); break; } char[] input = str.toCharArray(); // 将字符串转换为字符数组 int[] result = check(chs, input); if (result[0] == chs.length) { // 对 int score = 100 * chs.length - 10 * count; System.out.println("恭喜你,猜对了!得分为:" + score); break; } else { count++; System.out.println("字符对个数为:" + result[1] + ",位置对个数为:" + result[0]); } } } // 生成随机字符数组chs public static char[] generate() { char[] chs = new char[5]; char[] letters = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' }; boolean[] flags = new boolean[letters.length]; for (int i = 0; i < chs.length; i++) { int index; do { index = (int) (Math.random() * letters.length); } while (flags[index] == true); chs[i] = letters[index]; flags[index] = true; } // i=0 index=0 chs[0]='A' flags[0]=true // i=1 index=25 chs[1]='Z' flags[25]=true // i=2 index=0/25/0/25/1 chs[2]='B' flags[1]=true return chs; } // 对比:随机字符数组chs与用户输入的字符数组input public static int[] check(char[] chs, char[] input) { int[] result = new int[2]; // (0,0) for (int i = 0; i < chs.length; i++) { for (int j = 0; j < input.length; j++) { if (chs[i] == input[j]) { result[1]++; if (i == j) { result[0]++; } break; } } } return result; }}支上上
849***107@qq.com
tfbyly
905***717@qq.com
数组这里有一个问题容易搞不清楚的。
在 java 中,关于数组描述正确的是( B,D )
A.数组中的索引下标从1开始
B.存储在数组当中的数据都属于同一数据类型
C.通过数组名.length()能获得