(); list.add(10);" /> (); list.add(10);" />

ヤマムギ

growing hard days.

*

Java SE 7 Silver対策勉強をしながらメモ 2015/2/8

      2015/03/29

今日から練習問題を再確認。

ひと通りテキストを終えた安心感からかイージーミスが連発。

本番想定というか本番と全く同一の緊張感でやらなければ。

いつものごとくマークダウンで記載したのでそのままJetpack Markdownにお任せでアップします。

静的インポートの文法をちゃんと覚える!!!

[java]
package pack;

public class Class1{
public static String method(String str){
return “string : “ + str;
}
}
[/java]
[java]
//ここに入れるインポート文

public class Class2{
public static void main(String[] args){
System.out.println(method(“TestString”));//静的呼出しがしたい
}
}
[/java]
[java]
//いずれか
import static pack.Class1.method;
import static pack.Class1.*;
[/java]

ArrayList.size()は配列のlengthと同じ!!だからそのまま添え字に使われているときはIndexOutOfBoundsになる!!!

[java]
import java.util.ArrayList;

class Test{
public static void main(String[] args){
ArrayList list = new ArrayList<>();
list.add(10);
list.add(20);
System.out.println(list.get(list.size()));//実行時エラー
}
}
[/java]

Iterator(イテレーター)型

[java]
import java.util.*;

class ReverseTest{
public static Iterator reverse(List list){
Collections.reverse(list);
return list.iterator();
}
public static void main(String[] args){
List list = new ArrayList();
list.add(“10”);
list.add(“20”);
list.add(“30”);
for (Object obj : reverse(list)){ //コンパイルエラー
System.out.println(obj);
}
}
}
[/java]

  • Iterator型をObjectに代入する事は出来ない

継承と型で使えないメソッドに注意!!!

[java]
import java.util.*;
interface A{
void foo();
}
class B implements A{
public void foo(){

}
public void bar{

}
}
class C extends B{
public void foo(){

}
}
class Test {
public static void main(String[] args){
List list = new ArrayList();
list.add(new B());
list.add(new C());
for (A a : list){
a.foo();
a.bar();//コンパイルエラー
}
}
}
[/java]

  • barメソッドはB,Cでのみ利用可能なので、Aで宣言しているコレクションのループでは使えない

ArrayList.addで添え字を使う場合 配列数(最大添え字+1)までしか使えない

[java]
import java.util.ArrayList;

public class StringEquals {
public static void main(String[] args){
ArrayList al = new ArrayList(10);
al.add(“a”);
al.add(“b”);
al.add(“c”);
al.add(“d”);
al.add(5,”e”);//実行時エラー
for(String a:al){
System.out.print(a);
}
}
}
[/java]

  • IndexOutOfBoundsが発生
  • 上記の場合は4までの数字ならOK

注意事項!!!!!

問題をちゃんと読む! そして消去法でも納得のいかない答えに辿り着いた場合は穴があくまで問題を見る!!


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - Java, study , ,

ad

ad

  関連記事

「MasterCloud-Alexa makes the world a better place-」で登壇しました

クラウド全体を扱う勉強会MasterCloudのAlexaの会で登壇してきました …

DevLOVE関西 現場甲子園2015 「西日本大会」に行ってきました

DevLOVE関西 現場甲子園2015 「西日本大会」に行ってきました。 全部で …

Innovation EGG 第6回 『IoT 今と未来』に参加してきました

雨を心配していましたが、曇り空ながら雨はやんで、180名強の方が参加されたInn …

Alexa Day 2018で「Alexa はどこにでも。AVSが開くAlexa Enabled なライフスタイル」を聞きました

photo by 金春さん スピーカーはオランダから一時帰国中の伊東のともさん …

DevLOVE関西「プログラミングを楽しく続けるための健康Hack」に行ってきました

DevLOVE関西「プログラミングを楽しく続けるための健康Hack」に行ってきま …

「SendGrid Night in Osaka #2」でLTさせていただきました

SendGrid Night in Osaka #2でLTをしてきました。 会場 …

「AWSの基礎を学ぼう 特別編 最新サービスをみんなで触ってみる Amplify + Admin UI」に参加しました。

亀田さんが定期開催というか、高頻度開催されている「AWSの基礎を学ぼう 特別編  …

「JAWS DAYSに行きたくても行けなかった人に捧ぐ!AWSユーザーが教えてくれるAWSにまつわる最新事情」で運営と発表をしました

JAWS DAYS 2017のre:Capを大阪で開催しました。 JAWS DA …

「CLS高知2023戻り鰹編」に参加しました

12回目のCLS高知、2023戻り鰹編に参加しました。 高知駅付近から弁天座へ自 …

「Bluemix勉強会 -Watson、Node-RED 最新情報を学ぼう!」に行ってきました

「Bluemix勉強会 -Watson、Node-RED 最新情報を学ぼう! 」 …