JAVAプログラミング----配列基礎
6773 ワード
いくつかの小さな問題:
1.配列にメモリを割り当てるのはいつですか?配列初期化時にメモリを割り当てる
2.配列が作成されると、サイズを変更できますか?配列が作成されると、その大きさは変更できません.arrayを使用できます.lengthの得られた配列の大きさ.int[] list; list = new int[10];//初期化配列list=new int[20];//元の配列のサイズを変更するのではなく、配列変数に値を再割り当てします.
3.実参はどのように方法に伝達されますか?実参は形参と同じ名前でいいですか?メソッドを呼び出すと、プログラムはパラメータに記憶領域を割り当て、実パラメータの値をパラメータに割り当てます.パラメータはローカル変数であり、実パラメータとは同じ役割ドメインにないため、同名にすることができます.
4.メソッドのリロードとは?メソッドの修飾子や戻り値タイプに基づいてリロードできますか?メソッドのリロード:メソッド名は同じで、パラメータリスト(パラメータタイプ、パラメータ順序、パラメータ数)はメソッドの修飾子または戻り値タイプに応じてリロードできません.メソッド呼び出しは値として処理してもよいし、int val=fun()やfun()などの文として処理してもよいので、文として処理する場合、コンパイラは誰を呼び出すべきかを区別できません.
配列の基礎に関するいくつかのプログラミング問題.
1.整数配列の平均値を計算する関数を書く
2.整数配列aをカスタマイズし、整数nを読み込み、nが配列に存在する場合、*はnの下付き文字を出力する.存在しない場合は、-1を出力します.(*)
3.指定された配列の最大最小値を出力します.
4.配列を指定し、配列の要素を順番に逆さまにして出力する
5.泡立ちソート
6.ソートの挿入
7.配列の基本ツール
8.最大公約数、最小公倍数
9.文字配列中のアルファベットの出現回数and文字列中のアルファベットの出現回数を計算する
1.配列にメモリを割り当てるのはいつですか?配列初期化時にメモリを割り当てる
2.配列が作成されると、サイズを変更できますか?配列が作成されると、その大きさは変更できません.arrayを使用できます.lengthの得られた配列の大きさ.int[] list; list = new int[10];//初期化配列list=new int[20];//元の配列のサイズを変更するのではなく、配列変数に値を再割り当てします.
3.実参はどのように方法に伝達されますか?実参は形参と同じ名前でいいですか?メソッドを呼び出すと、プログラムはパラメータに記憶領域を割り当て、実パラメータの値をパラメータに割り当てます.パラメータはローカル変数であり、実パラメータとは同じ役割ドメインにないため、同名にすることができます.
4.メソッドのリロードとは?メソッドの修飾子や戻り値タイプに基づいてリロードできますか?メソッドのリロード:メソッド名は同じで、パラメータリスト(パラメータタイプ、パラメータ順序、パラメータ数)はメソッドの修飾子または戻り値タイプに応じてリロードできません.メソッド呼び出しは値として処理してもよいし、int val=fun()やfun()などの文として処理してもよいので、文として処理する場合、コンパイラは誰を呼び出すべきかを区別できません.
配列の基礎に関するいくつかのプログラミング問題.
1.整数配列の平均値を計算する関数を書く
public class threeA {
public static void main(String[] args) {
int[] list = {1,2,1,3,3};
ave(list);
}
public static void ave(int[] list){
int sum = 0;
int res;
for (int i = 0; i < list.length; i++) {
sum = sum + list[i];
}
res = sum / list.length;
System.out.println(res);
}
}
2.整数配列aをカスタマイズし、整数nを読み込み、nが配列に存在する場合、*はnの下付き文字を出力する.存在しない場合は、-1を出力します.(*)
import java.util.Scanner;
public class threeB {
public static void main(String[] args) {
int[] array = {1,2,6,8,9};
System.out.println(" n:");
Scanner scanner = new Scanner(System.in);
int s = scanner.nextInt();
boolean bool = true;
for (int i = 0; i < array.length; i++) {
if (s == array[i]){
System.out.println(" :"+i);
bool = false;
break;
}
}
if(bool){
System.out.println(-1);
}
}
}
3.指定された配列の最大最小値を出力します.
public class threeC {
public static void main(String[] args) {
int[] array = {1,6,9,87,5,4};
int max = 0;
int min = 0;
max = min = array[0];
for (int i = 1; i < array.length; i++) {
if (array[i]>max){
max = array[i];
}
if (array[i]
4.配列を指定し、配列の要素を順番に逆さまにして出力する
import java.util.Arrays;
public class threeD {
public static void main(String[] args) {
int[] arr = {2,5,9,6,7};
for (int i = 0; i < arr.length/2; i++) {
//arr.length/2, arr.length ,
int temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-i-1] = temp;
}
System.out.println(Arrays.toString(arr));//Arrays.toString(arr)
}
}
5.泡立ちソート
public class threeE {
public static void main(String[] args) {
int[] a = {1,3,2,7,5};
int len = a.length;
for (int i = 0; i a[j+1]) {
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
for (int c: a){
System.out.print(c+",");
}
}
}
6.ソートの挿入
public class threeG {
public static void main(String[] args){
int[] arr = {6,8,9,1,4,3};
int len = arr.length;
for(int i = 1; i < len; i++){
int temp = arr[i]; //
int j = 0;
for(j = i - 1; j >= 0; j--){
if(arr[j] > temp){
arr[j+1] = arr[j];
}else{
break;
}
}
if(arr[j+1] != temp){
arr[j+1] = temp;
}
}
for(int n : arr){
System.out.print(n+",");
}
}
}
7.配列の基本ツール
import java.util.Arrays;
public class threeF{
public static void main(String[] args){
int[] num = {45,65,75,87,98,901};
//
int index = Arrays.binarySearch(num,98);
System.out.println(" " + index);
//
for(int n : num){
System.out.println(n);
}
System.out.println(Arrays.toString(num));
Arrays.sort(num);
//
int[] num2 = {10,32,15,9,564,31};
Arrays.sort(num2);//
System.out.println(Arrays.toString(num2));
//
int[] num3 = Arrays.copyOf(num2,10);
System.out.println(Arrays.toString(num3));
//
int[] newNum = new int[num2.length];
System.arraycopy(num2,0,newNum,0,num2.length);
System.out.println(Arrays.toString(newNum));
// ,
/*
:
System.arraycopy->Arrays.copyOf->for
*/
//
System.out.println(Arrays.equals(num2,newNum));
//
Arrays.fill(newNum,0);
System.out.println(Arrays.toString(newNum));
}
}
8.最大公約数、最小公倍数
import java.util.Scanner;
public class threebyone {
public int mincom(int m,int n){
int temp;
int t = 0;
if(m
9.文字配列中のアルファベットの出現回数and文字列中のアルファベットの出現回数を計算する
import java.util.Scanner;
public class threebytwo {
public static void main(String[] args) {
char[] chs = {'a','a','d','c','a','b'};
Scanner scanner = new Scanner(System.in);
System.out.println(" :");
//Scanner , char
char c = scanner.next().charAt(0);//charAt char
int count = 0;
for (int i = 0; i < chs.length; i++) {
if (chs[i] == c){
count++;
}
}
System.out.println("a :"+count);
/**
*
*/
// Scanner scanner = new Scanner(System.in);
// System.out.println(" :");
// String str = scanner.nextLine();
// System.out.println(str);
// System.out.println(" :");
// Scanner scanner1 = new Scanner(System.in);
// String c = scanner1.nextLine();
// int count = 0;
// int start = 0;
// //indexOf
// while(str.indexOf(c,start) >= 0 && start < str.length()){
// count++;
// start = str.indexOf(c,start) + c.length();
// }
// System.out.println(c+" :"+count);
}
}