第四关——
数组的初始化方式
- 动态初始化
初始化时只指定数组长度,由系统为数组分配初始值
格式:数据类型 [ ] 变量名 = new 数据类型[数组长度];
范例: int [ ] arr = new int[3];
- 静态初始化
初始化时指定每个数组元素的初始值,由系统决定数组长度
格式:数据类型 [ ] 变量名 = new 数据类型[ ] { 数据1 , 数据2 , 数据3 , ……} ;
范例: int [ ] arr = new int[ ] { 1 , 2 , 3 } ;
简化格式:数据类型 [ ] 变量名 = { 数据1 , 数据2 , 数据3 , ……} ;
范例: int [ ] arr = { 1 , 2 , 3 } ;
知道哪几种循环读取数组数据的方法?
for,for-each,和toString
通常遍历数组都是使用for循环来实现。遍历一维数组很简单,遍历二维数组需要使用双层for循环,通过数组的length属性可获得数组的长度。for循环本质就是把数组中的每个数据打印出来。
foreach循环,这种循环遍历数组和集合更加简洁。使用foreach循环遍历数组时,无须获得数组和集合长度,无须根据索(下标)引来访问数组元素,foreach循环自动遍历数组和集合的每一个元素。
利用Arrays工具类中的toString静态方法可以将一维数组转化为字符串形式并输出。
已知打印一维数组的API为System.out.println ( Arrays.toString ();,其参数为数组名或数组指针,其支持的数据类型有很多,如:int[]、char[]、byte[]等。
————————————————
版权声明:本文为优快云博主「胡毛毛_三月」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/qq_45696377/article/details/109553685
两个数组合并要注意些什么?
apache-commons 这是最简单的办法。在apache-commons中,有一个ArrayUtils.addAll(Object[], Object[])方法,可以让我们一行搞定: String[] both = (String[]) ArrayUtils.addAll(first, second); 其它的都需要自己调
用jdk中提供的方法,包装一下。 为了方便,我将定义一个工具方法concat,可以把两个数组合并在一起: static String[] concat(String[] first, String[] second) {} 为了通用,在可能的情况下,我将使用泛型来定义,这样不仅String[]可以使用,其它类型的数组也可以使用: static <T> T[] concat(T[] first, T[] second) {} 当然如果你的jdk不支持泛型,或者用不上,你可以手动把T换成String。
System.arraycopy()
Arrays.copyOf() 在java6中,有一个方法Arrays.copyOf(),是一个泛型函数。
Array.newInstance 还可以使用Array.newInstance来生成数组
————————————————
版权声明:本文为优快云博主「frank1998819」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/frank1998819/article/details/84466299
配置了哪些环境?
为了配置 JDK 的系统变量环境,我们需要设置三个系统变量,分别是 JAVA_HOME(可选),Path 和 CLASSPATH,下面是这三个变量的设置方式。
JAVA_HOME
先设置这个系统变量名称,变量值为 JDK 在你电脑上的安装路径:C:\ProgramFiles\Java\jdk1.8.0_20。
创建好后则可以利用%JAVA_HOME%作为 JDK 安装目录的统一引用路径,如果换了目录可以直接换这个变量而不用换 path。
Path
PATH 属性已存在,可直接编辑,在原来变量后追加:;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 即可。
CLASSPATH
添加名为 CLASSPATH 的系统变量,变量值为:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\jre\lib\rt.jar 。
注意 CLASSPATH 变量值字符串前面有一个点(表示当前目录)。设置 CLASSPATH 的目的,在于告诉 Java 执行环境,在哪些目录下可以找到您所要执行的 Java 程序所需要的类或者包。
JDK 是 Java 工具开发包,JRE 是 Java 运行环境。简单来说就是 JDK 开发后交给 JRE 运行,JDK 默认包含 JRE。
————————————————
版权声明:本文为优快云博主「weixin_39805644」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/weixin_39805644/article/details/114246605
冒泡排序原理
冒泡排序原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,这样一趟过去后,最大或最小的数字被交换到了最后一位,然后再从头开始进行两两比较交换,直到倒数第二位时结束,其余类似看例子。
或者可以这样描述冒泡排序:
就是将第一个记录的关键字和第二个记录的关键字进行比较,
如果后面的比前面的小则交换,然后比较第二个和第三个,依次类推。
比完一趟,最大的那个已经放到了最后的位置,这样就可以对前面N-1个数再循环比较。
稳定,时间复杂度 O(n^2)
实例 : //冒泡排序(数组排序)
function bubble_sort($array) {
$count = count($array);
if ($count <= 0) return false;
for($i=0; $i<$count; $i++){
for($j=$count-1; $j>$i; $j–){
if ($array[$j] < $array[$j-1]){
$tmp = $array[$j];
$array[$j] = $array[$j-1];
$array[$j-1] = $tmp;
}
}
}
return $array;
}
可以给数组整体赋值吗?
可以
Java中数组赋值的三种方式
推荐第一种:
public class ArrayTest{
public static void main(String args[]){
// 1
int[] a=new int[4];
a[0]=1;
a[1]=2;
a[2]=3;
a[3]=4;
System.out.println(a[3]);
// 2
int b[]=new int[4];
b[0]=1;
b[1]=2;
b[2]=3;
b[3]=4;
System.out.println(b[2]);
// 3
int[] c={1,2,3,4};
int[] d=new int[]{1,2,3,4};
System.out.println(c[2]);
System.out.println(d[3]);
}
}
————————————————
版权声明:本文为优快云博主「玄夜」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/lengol/article/details/50412377