6
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

JavaとPythonの基礎文法比較

Posted at

  

#はじめに#
JavaとPythonの基礎文法を比較してみました。
Javaの文法が汚かったり、違う部分があればご指摘いただけるとありがたいです!

#目次#
1.出力
2.変数
3.文字列と数値の結合
4.if文
5.for文
6.while文
7.forとwhileでbreak, continue
8.list
9.辞書

#1.出力#

python
print('123')
print(123)
>>>123
>>>123
java
public class Main {
    public static void main(String[] args){
        
        System.out.println("123");
        System.out.println(123);
    }
}
>>>123
>>>123

#2.変数#

python
mystr = 'hello'
myint = 123
print(mystr)
print(myint)
>>>hello
>>>123
java
public class Main {
    public static void main(String[] args){
        
        String mystr = "hello";
        int myint = 123;
        
        System.out.println(mystr);
        System.out.println(myint);
    }
}
>>>hello
>>>123

#3.文字列と数値の結合#

python
myint = 123
print('数字は' + str(myint))
>>>数字は123
java
public class Main {
    public static void main(String[] args){
        
        int myint = 123;
        System.out.println("数字は" + myint);
    }
}
>>>数字は123

#4.if文#

python
myint = 10
if myint == 10:
    print('myintは10です')
>>>myintは10です
java
public class Main {
    public static void main(String[] args){
        
        int myint = 10;
        if(myint == 10){
            System.out.println("myintは10です");
        }
    }
}
>>>myintは10です

#5.for文#

python
for char in 'Hello':
    print(char)
>>>H
>>>e
>>>l
>>>l
>>>o
java
//splitと拡張for文
public class Main {
    public static void main(String[] args){
        
        String mystr = "hello";
        String[] strArray = mystr.split("");
        for(String s : strArray) {
	        System.out.println(s);
            }
    }
}

//charAtとfor文
public class Main {
    public static void main(String[] args){
        
        String mystr = "hello";
        for(int i = 0; i < mystr.length(); i++) {
	        System.out.println(mystr.charAt(i));
            }
    }
}

>>>h
>>>e
>>>l
>>>l
>>>o

###・指定回数だけループ###

python
for i in range(3):
    print(i)
>>>0
>>>1
>>>2
java
public class Main {
    public static void main(String[] args){
        
    for(int i = 0; i < 3; i++) {
        System.out.println(i);
        }
    }
}
>>>0
>>>1
>>>2

###・リスト、配列のループ処理###

python
list = ['item1', 'item2', 'item3']
for item in list:
    print(item)
>>>item1
>>>item2
>>>item3
java
public class Main {
    public static void main(String[] args){
        
        String[] list = {"item1", "item2", "item3"};
        for(int i = 0; i <list.length; i++){
            System.out.println(list[i]);
        }
    }
}
>>>item1
>>>item2
>>>item3

#6.While文#

python
val = 0
while val < 4:
    val += 1
    print(val)
print('valは' + str(val))
>>>1
>>>2
>>>3
>>>4
>>>valは4
java
public class Main {
    public static void main(String[] args){
        
        int val = 0;
        while(val < 4){
            val++;
            System.out.println(val);
        }
        System.out.println("valは" + val);
    }
}
>>>1
>>>2
>>>3
>>>4
>>>valは4

#7.forとwhileでbreak, continue
###・for文でbreak###

python
list = [1,2,3,4,5]
for i in list:
    if i == 3:
        break
    print(i)
>>>1
>>>2
>>>breakで繰り返し処理終了
java
public class Main {
    public static void main(String[] args){
        
        int[] list = {1,2,3,4,5};
        for(int i = 1; i < list.length; i++){
            if(i == 3){
                break;
            }
            System.out.println(i);
        }
    }
}
>>>1
>>>2
>>>breakで繰り返し処理終了

###・while文でbreak###

python
val = 1 
while val < 10:
    if val == 3:
        break 
    print(val)
    val += 1
>>>1
>>>2
>>>breakで繰り返し処理終了
java
public class Main {
    public static void main(String[] args){
        
        int val = 1;
        while(val < 10){
            if(val == 3){
                break;
            }
            System.out.println(val);
            val++;
        }
    }
}
>>>1
>>>2
>>>breakで繰り返し処理終了

###・for文でcontinue###

python
# for文でcontinue
list = [1,2,3,4,5]
for i in list:
    if i == 2:
        continue
    print(i)
>>>1
>>>3
>>>4
>>>5
java
public class Main {
    public static void main(String[] args){
        
        int[] list = {1,2,3,4,5};
        for(int i = 1; i < list.length+1; i++){
            if(i == 2){
                continue;
            }
            System.out.println(i);
        }
    }
}
>>>1
>>>3
>>>4
>>>5

###・while文でcontinue###

python
val = 0
while val < 5:
    val += 1
    if val == 2:
        continue
    print(val)
>>>1
>>>3
>>>4
>>>5
java
public class Main {
    public static void main(String[] args){
        
        int val = 1;
        while(val < 6){
            if(val == 2){
                val++;
                continue;
            }
            System.out.println(val);
            val++;
        }
    }
}
>>>1
>>>3
>>>4
>>>5

#8.list#
pythonではリストが配列の役割を担っています。

python
list = ['a','b','c']
print(list)
>>>['a','b','c']

Javaではリストの中身を全部一気に取得できないので、forを使って一つずつ呼び出す必要があります。

java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args){
        
        List<String> list = new ArrayList<String>(Arrays.asList("a", "b", "c"));
        
        for(int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
    }
}
>>>a
>>>b
>>>c

###・リスト内の要素の参照###

python
list = ['a','b','c']
#先頭の要素
print(list[0])
#2番目の要素
print(list[2])
>>>a
>>>c
java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args){
        
        List<String> list = new ArrayList<String>(Arrays.asList("a", "b", "c"));
        //先頭の要素
        System.out.println(list.get(0));
        //2番目の要素
        System.out.println(list.get(2));
    }
}
>>>a
>>>c

###・リストへの値の追加###

python
list = ['a','b','c']
#末尾に追加
list.append('d')
#指定位置に追加
list.insert(2, 'd')

print(list)
>>>['a','b','d','c','d']
java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args){

        List<String> list = new ArrayList<String>(Arrays.asList("a", "b", "c"));
        //末尾に追加
        list.add("d");
        //指定位置に追加
        list.add(2, "d");
    }
}
>>>{"a","b","d","c","d"}

###・リストからの値の削除###

python
list = ['a','b','c']
#末尾の要素を削除
list.pop()
#指定位置の要素を削除
list.pop(1)
print(list)

>>>['a']
java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args){

        List<String> list = new ArrayList<String>(Arrays.asList("a", "b", "c"));
        //指定位置の要素を削除
        list.remove(0);
    }
}
>>>{"b","c"}

###・リストの値の更新###

python
list = ['a','b','c']
list[1] = 'x'
print(list)
>>>['a','x','c']
java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args){

        List<String> list = new ArrayList<String>(Arrays.asList("a", "b", "c"));
        list.set(1,"x");
    }
}
>>>{"a","x","c"}

#9.辞書、Map#

python
dict = { 'apple':1, 'orange':2, 'banana':3 }
print(dict['apple'])
>>>1
java
import java.util.LinkedHashMap;

public class Main {
    public static void main(String[] args){

        LinkedHashMap<String, Integer> map = new LinkedHashMap<>() ;
            
        map.put("apple", 1);
        map.put("orange", 2);
        map.put("banana", 3);
            
        System.out.println(map);
        System.out.println(map.get("apple"));
    }
}
>>>{apple=1, orange=2, banana=3}
>>>1

順序を保持して入れたかったので今回はLinkedHashMapを使いました。

Mapの種類と特徴
LinkedHashMap:
キーを格納した順に保持。
TreeMap:
キーの昇順に保持。
HashMap:
順序を保持しない。

###・辞書、Mapの値の更新###

python
dict = { 'apple':1, 'orange':2, 'banana':3 }
dict['apple'] = 5
print(dict)
>>>{ 'apple':5, 'orange':2, 'banana':3 }
java
import java.util.LinkedHashMap;

public class Main {
    public static void main(String[] args){

        LinkedHashMap<String, Integer> map = new LinkedHashMap<>() ;
            
        map.put("apple", 1);
        map.put("orange", 2);
        map.put("banana", 3);
        
        map.put("apple",5);
        System.out.println(map);
    }
}
>>>{apple=5, orange=2, banana=3}

###・辞書、Mapの値の削除###

python
dict = { 'apple':1, 'orange':2, 'banana':3 }
del dict['apple'] 
print(dict)
>>>{'orange':2, 'banana':3 }
java
import java.util.LinkedHashMap;

public class Main {
    public static void main(String[] args){

        LinkedHashMap<String, Integer> map = new LinkedHashMap<>() ;
            
        map.put("apple", 1);
        map.put("orange", 2);
        map.put("banana", 3);
        
        map.remove("apple");
        System.out.println(map);
    }
}
>>>{orange=2, banana=3}

###・キーの存在確認###

python
dict = { 'apple':1, 'orange':2, 'banana':3 }
if 'apple' in dict:
    print('存在します')
else:
    print('存在しません')
>>>存在します
java
import java.util.LinkedHashMap;

public class Main {
    public static void main(String[] args){

        LinkedHashMap<String, Integer> map = new LinkedHashMap<>() ;
            
        map.put("apple", 1);
        map.put("orange", 2);
        map.put("banana", 3);
        
        if(map.containsKey("apple")){
            System.out.println("存在します");
        }else{
            System.out.println("存在しません");
        }
    }
}
>>>存在します

  

6
12
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?