Java入門・初心者質問スレ Part.6

■ このスレッドは過去ログ倉庫に格納されています
2017/12/21(木) 00:24:33.33ID:E/ADCCn6
Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.5
http://mevius.2ch.net/test/read.cgi/tech/1506675205/
2017/12/21(木) 00:40:44.16ID:f4NYarKv
>>前スレ999
はい。

>>同1000
はい。31がよく使われると書いてありました。


それと前のスレで挙げたコードは14行目に論理エラーがあったので、
修正版を載せます。
https://ideone.com/fKCV1w
2017/12/21(木) 00:52:46.42ID:N5HaNwtF
import java.util.*;
import java.lang.*;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.nio.charset.Charset;

class Appliciate{
public static void main (String[] args) {
byte[] ch = {(byte)0x3e,(byte)0x3e,(byte)0x31,(byte)0xe4,(byte)0xb9,(byte)0x99};
String str = new String(ch, StandardCharsets.UTF_8);
System.out.println(str);
}
}

https://ideone.com/mUVi1N
2017/12/21(木) 01:47:51.06ID:24fGH3Wg
import java.io.ByteArrayOutputStream;
import java.util.stream.IntStream;

public class Main {
public static void main(String[] args) {
ByteArrayOutputStream b = IntStream.of(0x3e, 0x3e, 0x31, 0xe4, 0xb9, 0x99)
.collect(ByteArrayOutputStream::new, (x, i) -> x.write((byte) i),
(x, y) -> x.write(y.toByteArray(), 0, y.size()));
System.out.println(b);
}
}

https://ideone.com/WD6nmo
5デフォルトの名無しさん
垢版 |
2017/12/21(木) 03:51:57.29ID:pYMJ415M
Java使ってる奴って閉鎖的だよね・・・
2017/12/21(木) 08:12:00.87ID:uRax2Y5D
31がよく使われると書いてあったからって、あんまり回答になってないんだが…。
フィールドのxorを取るだけでは駄目なの?
72
垢版 |
2017/12/21(木) 18:46:19.95ID:f4NYarKv
>>6
正直俺の技術レベルでは分かりません…。
今の段階では本に従ってればいいかなって。
2017/12/21(木) 20:59:05.28ID:fnYCwRUP
31というと0x1fか。まあなんとなくよさげな数値のような気もするが本当に良いかどうか俺にはわからない。
9デフォルトの名無しさん
垢版 |
2017/12/21(木) 22:59:51.89ID:an3TFL0C
public class IchiOtsu {
public static void main(String[] args) {
char[] io = { 0x087f, 0x1804, 0x0808, 0x0810, 0x0820, 0x0840, 0x0841, 0x1c3e };
for (int i = 0; i < io.length; ++i) {
for (int b = 0, m = 0x8000; b < 16; ++b, m >>= 1)
System.out.print((io[i] & m) != 0 ? '*' : ' ');
System.out.println();
}
}
}

https://paiza.io/projects/2cYludp3c51wOwQAWAyROQ
2017/12/21(木) 23:36:31.73ID:an3TFL0C
public class Main {
public static void main(String[] args) {
java.math.BigInteger bi = new java.math.BigInteger("i3whc3eolqjks4r04wo3jgam", 36);
for (int i = 127; i >= 0; i--) {
System.out.print(bi.testBit(i) ? '*' : ' ');
if ((i & 0x0f) == 0)
System.out.println();
}
}
}
https://paiza.io/projects/VNDcowvZ83LrkoND0EL0gA
2017/12/22(金) 10:01:19.89ID:Zf+4IlSz
オラクルの資格に挑戦している初学者(私のことです)に向いている IDE をご紹介いただけないでしょうか。
2017/12/22(金) 12:05:18.53ID:mllADrcb
スレチかもですが教えてください。
JBossでearをデプロイした際の挙動がよくわかりません。
自分の想定では、所定のディレクトリにearファイルと同名のディレクトリが作られてearファイルの中身が展開されるのかと思っていましたが、Win+Eclipse環境でデプロイしたところ所定のディレクトリにearファイルが置かれているだけでした。
earファイルが置かれた状態でも動作としては期待通りなのですが、デプロイの挙動が期待と異なるためデプロイの仕組みについて知りたく、解説、参考になるサイト等をご教示願います。
2017/12/22(金) 18:02:31.65ID:0VxzQQtH
>>11
エクリプスなどのIDEは予測変換機能やエラー検知機能などが付いているから
練習にならない場合があるかも。
地味にコマンドプロンプトとメモ帳でやった方がいいと個人的には思う。
2017/12/22(金) 19:37:52.52ID:VhDTuYyl
メモ帳以外のテキストエディタの方がいいと思う。。。
テキストエディタなら一部を除いて強力な補完は無いだろうし。
いきなりメモ帳でやるとタイポで萎えると思うから、クラスやステートメント等々強調表示と閉じかっこの補完くらいで良いと思う。
2017/12/22(金) 19:59:46.74ID:XPTqyYwf
>>6
コイツはマ板に出現する無職35歳で
XORをよく理解してないし
レジスタにヌルを送ろうとするアホだから
説明するだけ無駄ですよ
2017/12/22(金) 21:39:44.24ID:/oEtH5rd
>>11
テキストエディタとantかmaven
17デフォルトの名無しさん
垢版 |
2017/12/22(金) 23:18:07.94ID:RZt5N+k9
【Microsoft Tech Summit】APP017 PowerShellの新しい相棒 Visual Studio Code
https://www.youtube.com/watch?v=0zo6z0yHrGk

2017/01/23 に公開された動画
2017/12/23(土) 18:44:21.11ID:QZwOVskP
javaで配列の添字に列挙定数を使う場合、どのように記述すれば良いのでしょうか。

以下のC言語の様に記述することは可能ですか?
enum {
 TYPE_A,
 TYPE_B,
 TYPE_O,
 TYPE_AB,
 ALL_BLOOD_TYPE
}

enum {
 MALE,
 FEMALE,
 ALL_SEX_TYPE
}

char pattern[ALL_SEX_TYPE][ALL_BLOOD_TYPE];
19デフォルトの名無しさん
垢版 |
2017/12/23(土) 19:56:38.84ID:uGK8CTGJ
こんなんでよければ

enum BloodType {
 A, B, O, AB;
}

enum SexType {
 MALE, FEMALE;
}

public static void main(String[] args) {
 char[][] pattern = new char[SexType.values().length][SexType.values().length];
 System.out.println(pattern[BloodType.A.ordinal()][SexType.MALE.ordinal()]);
}
2017/12/23(土) 20:00:45.14ID:klWFd7IO
見づらいね
2017/12/23(土) 20:14:31.65ID:JTR2eAQ3
なるほど、Cほど単純には扱えないんですね。
ありがとうございました。
2017/12/23(土) 21:41:55.23ID:50F5QlEP
static final int でそれぞれの値とバリエーションの数を定義したほうが見通しよさそう。
23デフォルトの名無しさん
垢版 |
2017/12/23(土) 22:53:26.74ID:uGK8CTGJ
enum使うなら専用のクラス作るとかね

class Table<Row, Column, Value> {
 Map<Row, Map<Column, Value>> data;

 Table() {
  data = new HashMap<>();
 }

 void put(Row row, Column column, Value value) {
  Map<Column, Value> record = data.get(row);
  if (record == null) {
   record = new HashMap<>();
   data.put(row, record);
  }
  record.put(column, value);
 }

 Value get(Row row, Column column) {
  Map<Column, Value> record = data.get(row);
  if (record == null) {
   return null;
  }
  return record.get(column);
 }
}

public static void main(String[] args) {
 Table<SexType, BloodType, String> table = new Table<>();
 table.put(SexType.MALE, BloodType.A, "鈴木さん");
 System.out.println(table.get(SexType.MALE, BloodType.A));
}
2017/12/23(土) 23:44:50.89ID:tjWojq4d
C++のような演算子オーバーロードも無ければC#のデフォルトプロパティ構文もないから
どうやっても見やすくならないなあ…
2017/12/24(日) 00:12:42.20ID:aniM+3Ee
javaは馬鹿には使いこなせないからな
2017/12/24(日) 00:17:37.62ID:PRD5VFML
あまり頭が良すぎる人が書くと何やってるかわからないコードになりがちだよね
頭良すぎるのも考え物だね
2017/12/24(日) 00:28:10.14ID:WikwUycQ
頭の良い人のコード、ってどんなコードなのだろうか?
あまり人のコードを読んでいないので、よくわからない
これぞ頭のいい人のコード、というものがあったら、挙げていただけないものだろうか?
2017/12/24(日) 00:39:29.18ID:xcKfvZtA
>>23
性別と血液型の組み合わせごとに1人ずつ
8人しか登録できんじゃねーかw
29デフォルトの名無しさん
垢版 |
2017/12/24(日) 05:10:26.33ID:7ASFTRv4
>>24
Kotlin やりなさい。
2017/12/24(日) 06:42:22.74ID:RfRGBvGh
kotlinはまさにjavaが持っている痒いところに手が届かない部分の、シンタクスシュガーの塊な感じだね
2017/12/24(日) 07:41:09.04ID:/uYLPwgV
groovyやscalaの時も同じようなこと言ってたろ
32デフォルトの名無しさん
垢版 |
2017/12/24(日) 11:10:02.85ID:ZUclbhk1
>>28
自分で作ればいいじゃねーかw こうですか?わかりません
2017/12/24(日) 11:35:23.83ID:a9825jQb
ごめん要求仕様がもともとそうだった
34デフォルトの名無しさん
垢版 |
2017/12/24(日) 11:46:07.15ID:ZUclbhk1
教えて欲しい?
2017/12/24(日) 14:04:14.92ID:WEDlgJSY
>>33
そうだね、質問者の配列名は pattern[][] だった。
回答の put() で追加しているのが ”鈴木さん” だから変に見えるかもしれん。
2017/12/24(日) 14:07:38.44ID:7ASFTRv4
>>30
そうそう。書きやすく書いて、後はコンパイラの最適化に任せる。
2017/12/24(日) 14:50:44.02ID:BNj/0IJ2
>>31
GroovyもScalaもJavaとの互換性は一方通行だからね
KotlinはJavaとほぼ完全な互換性があり、混ぜても不都合はほとんど生じない
38デフォルトの名無しさん
垢版 |
2017/12/24(日) 16:09:48.87ID:7ASFTRv4
てか、不具合生じないように最初から作ってるからバグでもない限り大丈夫なのでは?
2017/12/26(火) 13:30:19.49ID:5qpAv3t1
randomクラスで引数空白でインスタンス化した場合、後からそこにどんな引数?seed?が使われていたのか参照するにはどうすればいいでしょうか
40デフォルトの名無しさん
垢版 |
2017/12/26(火) 17:01:08.00ID:yBe+gz6m
できないんじゃないかな
2017/12/26(火) 17:40:36.61ID:mkALhZWz
下記のコードの実行結果が*xist*nc*にならないのは何ででしょうか?
https://ideone.com/QBoODP
どなたか回答お願いします。
2017/12/26(火) 17:56:23.78ID:zc8zApfr
>>41
https://ideone.com/y04Y2L
4341
垢版 |
2017/12/26(火) 18:55:17.39ID:mkALhZWz
>>42
ありがとうございます。
なぜstr変数に代入しなければ結果に反映されないのでしょうか?
44デフォルトの名無しさん
垢版 |
2017/12/26(火) 19:12:27.10ID:cQPPYp0E
>>43
javadoc読んで下さい
4541
垢版 |
2017/12/26(火) 19:37:50.27ID:mkALhZWz
>>44
すいません。
分かりました。
46デフォルトの名無しさん
垢版 |
2017/12/26(火) 19:44:25.31ID:yBe+gz6m
>>43
Stringはわざと内容を書き換えられないように作ってあって、内容を変化させたい場合は新たに内容が書き変わった文字列を持つStringのインスタンスを作って返すという方式でやっているため。
それでは効率が悪くなる処理では StringBuilder 等の内容を書き換えるクラスを使う。
4741
垢版 |
2017/12/26(火) 23:31:50.83ID:mkALhZWz
>>46
詳しくありがとうございます。
2017/12/27(水) 19:59:40.87ID:8XzWQMmb
35歳は巣に帰れ
2017/12/29(金) 10:30:19.50ID:YXOWz6nN
言語直接の質問ではないのですが、あるライブラリが依存しているライブラリ全体の一覧を知る方法ってありますか?
例えば、ライブラリAを使う時に以下のような依存があったとして、
A → B, C, D
B → H, I
C → X
D, H, I, X → 依存なし

A, B, C, D, H, I, Xがあればコンパイル/実行可能というのが知りたいです
2017/12/29(金) 10:49:31.82ID:Drysc1Ac
>>49
今時手動でパッケージ管理はありえない
gradleかmaven使ってくれ
2017/12/29(金) 11:00:41.43ID:YXOWz6nN
>>50
手動で管理したいわけではなくて、一覧が知りたいんです
方法をご存知なら教えていただけますか?
2017/12/29(金) 11:09:32.00ID:Drysc1Ac
>>51
gradleやmaven使ってれば出るよ
2017/12/29(金) 11:18:04.34ID:YXOWz6nN
>>52
gradle dependenciesタスクで目的のものが得られました
レス感謝いたします
2017/12/29(金) 14:07:24.08ID:VZmBd+cs
>>48
すっこんでろ
55デフォルトの名無しさん
垢版 |
2017/12/29(金) 14:12:21.24ID:IY4nOP57
お前がすっこめよ知恵遅れ
2017/12/29(金) 16:36:39.24ID:S2fL3sM9
>>54
キーボードがすり減るから書き込むなよ
2017/12/29(金) 18:34:55.36ID:Qwx15A9Q
>>54
スレタイ読めませんか?
スレを荒らすの止めてください
あなたが反応しなければいいだけです
58デフォルトの名無しさん
垢版 |
2017/12/29(金) 18:44:39.74ID:QvUIq5eT
RxJavaのioとかcomputationのスレッドって必ずDaemonスレッドになるのかな?
subscribeして特になにもしないでスコープ抜けるとすぐに終了している(ように見える)。
いまいちよくわからん。
2017/12/29(金) 19:56:54.19ID:JrxBa267
争いはAA略
2017/12/29(金) 20:31:15.34ID:coDhdLub
superって上書きした後に実行するの?
初歩の初歩で申し訳ない
2017/12/29(金) 20:34:44.16ID:JrxBa267
どういう状況でのsuper なのか
2017/12/29(金) 20:37:37.57ID:S2fL3sM9
このスレは35歳が書き込んだ事で疑心暗鬼になっている

初心者が気軽に質問できるスレッドでは無くなっている
2017/12/29(金) 20:39:52.47ID:coDhdLub
宣言とかじゃないやつ…
なんていうかその()が語尾につくやつ
2017/12/29(金) 21:07:30.52ID:JrxBa267
コンストラクタなら真っ先に呼ばれるはずだけど。
試しにthis();の後とかに書いてみれば良い。
怒られるから。
2017/12/29(金) 22:03:58.03ID:T1dPNreK
https://dotup.org/uploda/dotup.org1424655.png
2017/12/29(金) 22:12:52.37ID:laQV98jS
>>49
Javadocで出るだろ
2017/12/29(金) 22:18:30.47ID:laQV98jS
それは逆か
2017/12/30(土) 00:37:37.05ID:ZOKm+QEU
>>65
「細長いストリーム」と「逆行シナプス」がわからん。
2017/12/30(土) 08:05:25.92ID:M2I24uN0
>>58
リアクティブプログラミングとRxJavaの概要
https://codezine.jp/article/detail/9570

直感的に理解する RxJava その1: 基本的な構成
https://android.benigumo.com/20160331/rxjava-part1/

プロセスとスレッドは、OS では別の用語。
1つのプロセスの中に、複数のスレッドを含むこともできる(マルチスレッド)

普通は、io を行うと、OS がカーネルスレッドを起動して、外部とやり取りする。
プロセスの4GBのメモリ空間内の内、ユーザーは3GB、カーネルは1GBを使っている
70デフォルトの名無しさん
垢版 |
2017/12/30(土) 10:32:36.42ID:9ZlY9AbK
ソース読んだ。
setDaemon(true)されてるな。
リークし難いようになる代わりに、不意の終了に気を付けないといけないわけね。
2017/12/30(土) 11:19:09.37ID:4nAki4r5
すっきりjava入門を読み終え。
すっきりjava実践を呼んでます。
Java SE 7/8 Bronzeを取得しました。
どの本を読めば40歳までに就職できますか?
7271
垢版 |
2017/12/30(土) 11:20:17.41ID:4nAki4r5
知識は有りますが勉強中の為、コードは書けません。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況