SlideShare a Scribd company logo
1 of 22
明日から使える
Javaテクニック
皆さん
はじめまして
こんばんわ
ソリューション事業部
齊藤です。
_人人人人人人_
> おれだけ <
 ̄Y^Y^Y^Y^Y ̄
セミコロンレスJava
セミコロンレスJava
・セミコロンを使わない
以上。
タイトルは釣りで
す
セミコロンレスJava
public class Count {
public static void main(String[] args) {
System.out.println(“Hello World”);
}
}
セミコロンレスJava
public class Count {
public static void main(String[] args) {
if (PrintStream.class
.getMethod("println", String.class)
.invoke(System.out, "Hello world") ==
null) {}
}
}
セミコロンレスJava
Ifやwhileを活用
条件式内にセミコロン不要なので活用
ただし、条件式はvoidメソッドだと比較できな
い。
セミコロンレスJava
リフレクション
クラス名やメソッド名を文字列で指定して直接
コールする。
Voidメソッドでも必ずオブジェクトがかえる
(null)
セミコロンレスJava
public class Count {
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
System.out.println(i);
}
}
}
セミコロンレスJava
public class Count {
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
if (null == System.out.printf("%dn", i++))
{}
}
}
}
セミコロンレスJava
public class Count {
public static void main(String[] args) {
if(IntStream.rangeClosed(1,10)
.peek(System.out::println).count() == 0){}
}
}
おまけ
コードゴルフ
コードゴルフ
・短く書く
以上。
コードゴルフ
public class FizzBuzz {
public static void main(String[] args) {
for (int i = 1; i <= 100; i++) {
If (i % 15 == 0) {
System.out.println("FizzBuzz");
} else if (i % 3 == 0) {
System.out.println("Fizz");
} else if (i % 5 == 0) {
System.out.println("Buzz");
} else {
System.out.println(i);
}
}
}
}
コードゴルフ
• class A{public static void main(String[]a){for(int i=0;++i<101;)System.out.println((i%3<1?"Fizz":"")+(i%5<1?"Buzz":i%3<1?"":i));}}
ご清聴ありがとうございました。

More Related Content

More from Tsuyoshi Saito

しゃちくフレンズ
しゃちくフレンズしゃちくフレンズ
しゃちくフレンズTsuyoshi Saito
 
プログラマの本気
プログラマの本気プログラマの本気
プログラマの本気Tsuyoshi Saito
 
20161125 尾崎 bootstrap
20161125 尾崎 bootstrap20161125 尾崎 bootstrap
20161125 尾崎 bootstrapTsuyoshi Saito
 
20161125 lt 池田法貴
20161125 lt 池田法貴20161125 lt 池田法貴
20161125 lt 池田法貴Tsuyoshi Saito
 
20161125 米田 angular_jsを触ってみた
20161125 米田 angular_jsを触ってみた20161125 米田 angular_jsを触ってみた
20161125 米田 angular_jsを触ってみたTsuyoshi Saito
 
10【懇親会lt】hulft scriptが5%ぐらい楽しくなる本〔メディアフォース齊藤さん〕
10【懇親会lt】hulft scriptが5%ぐらい楽しくなる本〔メディアフォース齊藤さん〕10【懇親会lt】hulft scriptが5%ぐらい楽しくなる本〔メディアフォース齊藤さん〕
10【懇親会lt】hulft scriptが5%ぐらい楽しくなる本〔メディアフォース齊藤さん〕Tsuyoshi Saito
 

More from Tsuyoshi Saito (9)

しゃちくフレンズ
しゃちくフレンズしゃちくフレンズ
しゃちくフレンズ
 
事業部発表用
事業部発表用事業部発表用
事業部発表用
 
プログラマの本気
プログラマの本気プログラマの本気
プログラマの本気
 
20161125 尾崎 bootstrap
20161125 尾崎 bootstrap20161125 尾崎 bootstrap
20161125 尾崎 bootstrap
 
20161125 lt 池田法貴
20161125 lt 池田法貴20161125 lt 池田法貴
20161125 lt 池田法貴
 
20161125 米田 angular_jsを触ってみた
20161125 米田 angular_jsを触ってみた20161125 米田 angular_jsを触ってみた
20161125 米田 angular_jsを触ってみた
 
20161125 LT 高嶋
20161125 LT 高嶋20161125 LT 高嶋
20161125 LT 高嶋
 
20161125 LT 小山
20161125 LT 小山20161125 LT 小山
20161125 LT 小山
 
10【懇親会lt】hulft scriptが5%ぐらい楽しくなる本〔メディアフォース齊藤さん〕
10【懇親会lt】hulft scriptが5%ぐらい楽しくなる本〔メディアフォース齊藤さん〕10【懇親会lt】hulft scriptが5%ぐらい楽しくなる本〔メディアフォース齊藤さん〕
10【懇親会lt】hulft scriptが5%ぐらい楽しくなる本〔メディアフォース齊藤さん〕
 

Recently uploaded

リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドKen Fukui
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドKen Fukui
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドKen Fukui
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfyukisuga3
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドKen Fukui
 
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptyuitoakatsukijp
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ssusere0a682
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドKen Fukui
 

Recently uploaded (8)

リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
 
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
 

セミコロンレスJava