2014年4月7日月曜日

原稿用紙で「」(かぎかっこ)を用いる際の空白・読点の付け方

こんにちは。しょこです。
今年度付で異動した先の会話が日本語:英語=7:3くらい。
英語レベルが低い自分は焦ってます。
DBスペシャリスト終わったら英語勉強しよう。。。

本題

DBスペシャリスト勉強しつつ、
下の本でロジカルに考えれるよう勉強してます。

子どものための論理トレーニング・プリント

小学生の頃にやったような国語のプリントに
近い形式で少し懐かしく思いつつプリントを進めています。

このプリントを進めていた際に知ったのですが、
原稿用紙で「」を使う時の作法が、私に身についていたものと違ったので、
紹介した本にあった作法を2点、こちらにメモしておきます。

1. 「」の内容が2行以上の場合、2マス目から書き出す。

以前は、2行目の最初の文字をマスの1番上から書いていたが、
最近では2マス目からの書き出しが一般的とのこと。
作法が変わった主な理由は、かぎかっこの中が横に揃ったほうが
見た目がきれいだからとのこと。

古い例 (私)
赤ずきんは、
「あら、おばあさん、どうしてそんなに目が大きいの。
まるで私をにらみつけているみたいで怖いわ。」
と言いました。

新しい例
赤ずきんは、
「あら、おばあさん、どうしてそんなに目が大きいの。
まるで私をにらみつけているみたいで怖いわ。」
と言いました。

2. 「」を受ける際は、主語などが続く時のみ読点を付ける。


誤った例 (私)
赤ずきんは、
「あら、おばあさん、どうしてそんなに目が大きいの。
まるで私をにらみつけているみたいで怖いわ。」
と、言いました。

正しい例① (誤った例から読点を取り除く)
赤ずきんは、
「あら、おばあさん、どうしてそんなに目が大きいの。
まるで私をにらみつけているみたいで怖いわ。」
と言いました。

正しい例② (「」を受ける際、主語などが続く場合)
赤ずきんは、
「あら、おばあさん、どうしてそんなに目が大きいの。
まるで私をにらみつけているみたいで怖いわ。」
と、素直な赤ずきんは目を丸くして言いました。

-----------------
まさか、ロジカルシンキング鍛えるために買った本で
原稿用紙の使い方を覚えるとは思っていませんでした。
英語を勉強しなければと冒頭に書きましたが、
母国語である日本語についてもよりいっそう勉強しなければならないと思いました。

要素一つのリストを作る

Draftに入ったままでずっと公開されていなかった…
2ヶ月ほど漬け込んでしまった。

-------------
最近仕事がコーディングメインで楽しいです。

さて、本題です。
既存機能のエンハンスしてる時に、
使いたいメソッドの引数がリストなのに、
リストの中身に入れたい要素が一つだけ、
という瞬間がありました。

何も知らずにやると、

DemoClassA demoA = new DemoClassA();
demo.setName("hoge");
List<DemoClassA> demoAList = new ArrayList();
demoAList.add(demoA);
demoMethod(demoAList);

となってしまうと思います。
なんか冗長でやだー_(:3」∠)_

でも、要素一つのリストを作りたい需要ってあると高いと思います。
きっと便利なメソッドがあるはずだ‼︎
と調べてみたらやっぱりありました!

Collections.singletonList()

これを使えば簡単に要素一つのリストが作れます!
先ほどのコードを書き換えると

List<DemoClassA> demoAList = new ArrayList();
demoAList.add(demoA);
demoMethod(demoAList);

ってのが、

demoMethod(Collections.singletonList(demoA));

となります!
コードがシンプルになってありがたいです。
これから積極的に使っていきたい。

ちなみに、SetとMapも同様にあります。

Setの場合は
Set<T> hoge = Collections.singleton(T o);

Mapの場合は
Map<K, V> foo =Collections.singletonMap(K key, V value);

詳しくはこちらを参照ください。
http://docs.oracle.com/javase/8/docs/api/java/util/Collections.html


これから使えそうなところはガンガン使っていきたいです。