Java
メソッド
基本的にクラスの中で定義する。処理をそれぞれまとめた部品のようなもの。
【例】
public static void hello();{
System.out.println("Hello World");
}
public...voidまでは定型文として、一度覚えておく。
引数
メソッドに与える追加情報のこと。
先ほどのhelloの後の()の中に
「(String name)」など引数を渡すことができる。
複数の引数を渡す際は「(String name,int price)」...と書く。
1つ目を第1引数、2つ目を第2引数と呼ぶ。
戻り値
メソッドの呼び出し元にて、結果を使用したい場合に用いる。
ちなみに、今まで使用していた「public static void..」のvoidは
戻り値なし、という意味なので覚えておく。
【例】
....
public static void main(String[]args){
String name=fullName("Yamada","Taro") /*←ここのfullName忘れないように注意!*/
printData(name,27);
}
public static void printData(String name,int age){
System.out.println("私の名前は"+name);
System.out.println("私の年齢は"+age);
}
public static String fullName(String firstName,String lastName){
return firstName+lastName;
}
クラス
今までmainメソッドと並列して、たくさんのメソッドを作ったが
並列が多すぎて見にくくなってしまうので、クラスを使用する。
そのために、他のクラスのメソッドを呼び出すことが必要になる。
【例】
/*Mainクラス*/
class Main{
public static void main(String[]args){
Person.hello();
}
}
/*Personクラス*/
class Person{
public static void hello(){
System.out.println("こんにちは");
}
}
Mainクラス→実行クラス
Personクラス→ロジック(論理クラス)
と分けると役割が明確になりやすい。
外部ライブラリ
他の人が作ったクラスをインポートを用いて利用することが可能。
例えばメジャーな例として、数学的なメソッドを持つMathというクラスがある。
それを読み込むには、クラスの↑で
「import java.lang.Math;」と書く必要がある。
※Mathに関しては、メジャーなため、インポートしなくても自動で読み込まれる。
【例】引数の2つの数値の大きい方を返してほしい時の書き方
import java.lang.Math;
class Main{
public static void main(String[]args){
int max=Math.max(3,8);
System.out.println("最大値は"+max+"です。");
}
}
【例】引数の小数点以下を四捨五入して、切り捨てる場合の書き方
/*...前省略...出力部分のみ*/
("BMIは"+Math.round(bmi)+"です。");
Scanner
コンソールに入力された文字列を受け取ることが可能。
import java.util.Scanner;
class Main{
public static void main (String[]args){
Scanner scanner=new Scanner(System.in);
/*↑Scannerの初期化*/
System.out.print("名前:");
/*ここで実行が一旦ストップされ入力を待つ状態になる*/
String name=scanner.next();
/*ここのscannerは小文字!「.」を忘れない! ↑で入力された文字列を呼び出す*/
System.out.println("名前は"+name+"です");
他に
scanner.nextInt();で整数。
scanner.nextDouble();で小数を受け取ることができる。
振り返り
メソッドの分け方や、戻り値を自身で書く際に
順序よく書かないと、ごちゃっとしてしまうので
ひとつひとつ理解しながら進めていかなくてはいけない。
まだ慣れていない部分が多々あるので、Progateの道場モードに
時間を空けて何度かチャレンジしようと思います。