ヤマムギ

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入門ガイド」という本を書きました。

 - Java, study , ,

ad

ad

  関連記事

JAWS FESTA 2017 Reverse X re:Birth

JAWS FESTA 2017 中四国 今年はブログタイトル「JAWS FEST …

第5回 八子クラウド座談会in関西 「関西まるっとIoTでやったらんかい♬」に行ってきました

SIMの契約変更のはざまで通信がほぼ使えず。 そんな状態なので、Twitterで …

LINEとAWSとTwilioとkintoneでBOTを作ってみるハンズオン (5) LINEからの投稿へ返信と登録処理

作る部分 LINEからのメッセージを受けて各APIより返信し、StepFunct …

VUI and IoT device(Alexa Day 2019でのブログ)

以下は、気になったことのメモとか感想を書いています。 登壇者、発表者、主催企業な …

「RPALT vol.24~Google Apps Scriptスペシャル~」でLTしました〜

RPAの勉強とLTのイベント、RPALT vol.24でLTしました〜。 今回は …

Innovation EGG 第8回 『可視化・課題と支える技術』に行ってきました

Innovation EGG 第8回 『可視化・課題と支える技術』に行ってきまし …

AWS Cloud Roadshow 2016 Osaka Night Event ミッドナイトJAWS

AWS Cloud Roadshow Osaka 2016のナイトイベントでミッ …

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

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

「実践AWSプログラミング in Osaka」に行ってきました

クラスメソッドさんの「実践AWSプログラミング in Osaka」に行ってきまし …

ActRoomの仕様を書いてみた

これはLow-Code/No-Code Advent Calendar 2018 …