Java的数组
Java数组的声明
Java中Java的声明类型有两种格式,分别为
第一种:类型[] 数组变量名
int[] arr;
第二种:类型 数组变量名[]
int arr[];
但是要注意的时,如果只是声明数组,数组并未初始化,并能对数组进行赋值
数组的初始化
数组的初始化可以理解为使用new创建一个对象,在内存堆中开辟一块内存空间,内存空间所对应的内存地址则传递给内存变量。
数组的初始化的方式有三种:
1.数值初始化时,定义数组的长度
类型[] 数组变量名=new 类型[数组的长度]
int arr[]=new int[6]; //初始化时定义数组的长度为6
2.类型[] 数组变量名=new 类型[]{数组的内容}
int arr[]=new int[]{1,2,3}; //初始化时内容为1,2,3
这里注意,当数组有大括号时,[]不能有里面内容,不能定义数组的长度
3.类型[] 数组变量名={数组的内容}
int arr[] = {1, 2, 3};
Java中使用实例
题目:
给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。
示例:
给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
解题:
下面展示一些 内联代码片
。
public class SolutionFirst {
public static void main(String[] args) {
SolutionFirst SF = new SolutionFirst();
int[] nums = {2, 7, 11, 15, 0, 19, 14};
//打印数组
printIntArray(nums);
int target = 14;
int[] arr = SF.forceSolution(nums, target);
System.out.println(arr[0] + "," + arr[1]);
}
public int[] twoSum(int[] nums, int target) {
int[] arr = forceSolution(nums, target);
return arr;
}
private int[] forceSolution(int[] nums, int target) {
int tmp = 0;
int len = nums.length;
for (int i = 0; i < len; i++) {
tmp = target - nums[i];
int j = i + 1;
for (; j < len; j++) {
if (tmp == nums[j]) {
int[] arr = {i, j};
return arr;
} else {
continue;
}
}
}
return null;
}
private static void printIntArray(int[] arr) {
System.out.println("print array");
for (int i : arr) {
System.out.print(i + " ");
}
System.out.println();
}
}