ヤマムギ

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

注意事項!!!!!

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


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

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

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

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

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

 - Java, study , ,

ad

ad

  関連記事

「自ら修羅の道を作り、修羅場を楽しみ、自内外に変化を起こし続ける」(『ソフトウェアファースト』読書感想)

「ソフトウェア・ファースト あらゆるビジネスを一変させる最強戦略」を読みました。 …

JAWS PANKRATION 2021「AWS Control Towerを使用して企業コストのサンドボックスを作成と継続的アウトプットのメリット」発表しました

同時通訳配信 JAWS PANKRATION 2021 -Up till dow …

走った!しゃべった!呑んだ!JAWS DAYS 2016 re:cap 〜JAWS-UG大阪&関西女子会 特別合同企画〜

先日のJAWS DAYS 2016 re:cap 〜JAWS-UG大阪&関西女子 …

第17回 人工知能研究会 「今後のDeepLearning技術の発展とビジネス応用」に行ってきました

第17回 人工知能研究会 「今後のDeepLearning技術の発展とビジネス応 …

「HandsWash2020」に参加しました

お久しぶりにハンズラボさんの勉強会に参加させていただきました! 去年、今年と馴染 …

IoTセミナー in おおさか「IoTで変わる!企業と働き方」に行ってきました

これからの企業と働き方 ~IoT・AIが創造する未来~ さくらインターネット株式 …

Rapidminerハンズオン勉強会に行ってきました

機械学習 OSSのRapidminerの勉強会に行ってきました。 OSS BI …

2018年もありがとうございました

今年も皆さまありがとうございました。 ということで、まだもうちょっといろいろやる …

JAWS-UG CLI専門支部に初めて参加してIAM入門してきた

JAWS-UG CLI専門支部に初参加してきました。 会場は茅場町のコワーキング …

IPython Notebookで梅田のラーメン屋さんの統計情報を抽出するというハンズオンに行ってきました

IPython Notebookで梅田のラーメン屋さんの情報をWebスクレイピン …