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

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (アウアウウー Sa07-jGB0)
垢版 |
2021/06/29(火) 11:42:34.74ID:iGYT4fi4a
次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512

Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.10
https://mevius.5ch.net/test/read.cgi/tech/1585721355/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
701デフォルトの名無しさん (ワッチョイ 7b9c-0o7i)
垢版 |
2022/04/15(金) 20:50:51.89ID:tvbeW/bB0
おう進め進め
いろいろと躓くこともあるだろうけど、都度、解決していくのが一番の近道
参考書読んでるだけじゃいつまで経っても成長しないぞ
702デフォルトの名無しさん (ワッチョイ 9fad-lFM7)
垢版 |
2022/04/16(土) 06:55:58.77ID:Ass65Yu+0
作りたいなら作れ
一々やる前に考えるな
2022/04/16(土) 07:48:23.63ID:3i5OLCW50
>>701
>>702
レスありがとうございます。
大変参考になりました。
704デフォルトの名無しさん (アウアウクー MM8b-zBfJ)
垢版 |
2022/04/18(月) 16:21:45.63ID:GGXXVNotM
>>699
あたりまえだろ。
705デフォルトの名無しさん (アウアウクー MM8b-zBfJ)
垢版 |
2022/04/18(月) 16:23:36.74ID:GGXXVNotM
>>698
おそらく数値で過去・未来の判定をしてるんだと思う。初心者がやりがちな変なやり方。
2022/04/18(月) 20:46:18.50ID:ju3Mcmkrr
>>705
それはわかった上で、普通に詰めると18:46:98.123456になっちゃうから、98秒ってなんだよ、ってことかと。
2022/04/18(月) 20:49:01.43ID:uUvHCwDfM
>>706
この話ただの書き間違いじゃないの?
78は何処から持ってきたんだよとツッコんだつもりがミスってたのは質問者自身だったとかいうオチで、バツが悪いから本人の追加コメントがなく話が終わったものかと
2022/04/19(火) 08:53:16.07ID:V5Ulk+h4r
>>707
そうだと思うよ。
709デフォルトの名無しさん (ワッチョイ 9763-/FUY)
垢版 |
2022/04/21(木) 22:30:14.83ID:KVDKM06Z0
STS4使ってます
mavenビルドで、一向に処理が終わらない
ずっと処理中のメッセージ(ログ)がグルグル上下に流れてる

同じような人いますか?? 原因は何でしょうか?
2022/04/21(木) 22:54:49.20ID:YLg3uB8J0
スッキリわかるJavaとらくらく突破Javaを読んだのですが、
基本情報技術者試験のJavaの問題が解けません
どなたか助言を頂けないでしょうか?
2022/04/22(金) 00:27:19.83ID:ZbT6iK7Od
基本情報のJava問題はJava自体というよりアルゴリズムについての問題だろ?
Javaだけ勉強してても無理だよ
Javaはしばらく忘れてもいいからちゃんとアルゴリズムの基礎を学ばないと
2022/04/22(金) 18:33:10.00ID:pP5T36Hl0
>>711
分かりました、ありがとうございます
713デフォルトの名無しさん (ワッチョイ a8ba-E6ke)
垢版 |
2022/04/23(土) 16:29:28.93ID:R6I5sF580
String inputFilePath = "‪D:\\Java\\test.dat";
bis = new BufferedInputStream(new FileInputStream(inputFilePath));
を実行したところ、
java.io.FileNotFoundException: ‪D:\Java\test.dat (The filename, directory name, or volume label syntax is incorrect)
とエラーがでます。
ファイルは指定した場所にあるのですが、なぜでしょうか?
714デフォルトの名無しさん (ワッチョイ a8ba-E6ke)
垢版 |
2022/04/23(土) 17:50:05.45ID:R6I5sF580
自己解決しました。
‪D:\\Java\\test.dat"の「¥」が一つ多かったようです
2022/04/23(土) 17:50:21.21ID:sCVpZJ8+M
実はファイル名が test.dat.txt になってて、拡張子が非表示になってるとか
716デフォルトの名無しさん (ワッチョイ 8763-bFMd)
垢版 |
2022/04/23(土) 21:39:19.14ID:7B2N1RZv0
maven 使ってる人いないの??
717デフォルトの名無しさん (ワッチョイ 9101-tijK)
垢版 |
2022/04/25(月) 19:09:18.75ID:qzS9T7XE0
java.util.RandomのnextDouble()が0から1の乱数を返すのではなく、nextInt()のように引数で範囲指定できる実行環境ってありますか?
2022/04/25(月) 19:40:35.37ID:T6pW4eRUM
>>717
その程度の算数ができないなら今すぐプログラミングやめたほうがいいぞ
2022/04/25(月) 20:05:32.48ID:Z2X+pALjr
>>717
ほれ
https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/RandomUtils.html#nextInt-int-int-

実行環境じゃなくてライブラリだけどな。
2022/04/25(月) 20:07:37.82ID:qRWlzNE6r
https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/RandomUtils.html#nextDouble-double-double-

欲しいのはdouble版だから、こっちか。
721デフォルトの名無しさん (ワッチョイ e2ad-WvSx)
垢版 |
2022/04/25(月) 23:09:18.35ID:3VWyhz1w0
Kotlin の kotlin.random.Random にはあるな。
2022/04/25(月) 23:17:13.28ID:kAiD569d0
まあ要らないからRandomに無いんだけどね
723デフォルトの名無しさん (ワッチョイ 0a95-lzk6)
垢版 |
2022/04/26(火) 12:53:45.70ID:Vfc464Tn0
何かスッキリ?という本が
流行ってるの?
2022/04/28(木) 22:06:05.02ID:s+Be+Coo0
インプレスのSEOによって、通販サイトで「Java」で検索すると
大体「スッキリわかるJava」という本が上位に来るようになってますよ
725デフォルトの名無しさん (ワッチョイ ff84-Q/q8)
垢版 |
2022/05/06(金) 21:32:19.18ID:dAxoLibn0
クリントン大統領の「不適切」というのは、チンポが独立して主体意思でシコシコしてしまったから。
チンポは独立した生き物であり、アメリカ大統領の権限をもってしても、制御することは不可能だ。

クリントンの「不適切な関係」
https://eigo-kobako.blog.so-net.ne.jp/2008-06-21

class チンポ extends クリントン{
     super.不適切な関係;
}



クリントンーーーーーーーーーー
┃             ┃
┃             ┃
┃             ┃
┃             ┃
┃             ┃
ーーーーーーーーーーーーーーー
     ┃チンポ┃
      ̄ ̄ ̄ ̄
『人格を性欲に乗っ取られる』、つまりクリントンはチンポに人格を乗っ取られて、チンポにシコられてしまった!
2022/05/07(土) 02:55:09.47ID:KR0JTKxv0
2008年、平山尚のセガ本「ゲームプログラマになる前に覚えておきたい技術」は、賞も取ってる有名な本で、
C++・オブジェクト指向・3D プログラミングの3つを、
1冊で解説しようとしたが、難しすぎて失敗に終わった

2011年「スッキリわかる Java入門」が、
Java・オブジェクト指向を1冊で解説して、大成功を収めた。
その結果、スッキリはシリーズ化されて、様々な言語・技術に波及していった

業界人の座談会でも、よくスッキリについて語られる。
分かりやすく解説するために、膨大な数のイラストを膨大な費用を掛けて作った

今でもこの武勇伝と、オブジェクト指向を日本に定着させた偉業は、伝説になっている
727デフォルトの名無しさん (ワッチョイ bf80-75xT)
垢版 |
2022/05/14(土) 22:09:25.21ID:5OkHPR5v0
スッキリ分かるjavaの実践編ってjava資格シルバー、ゴールドのどのあたりに近いですか?

自分は今入門編をギリギリ理解できるかできないか繰り返し読んでいますがjavaブロンズに達してないと思っています。
そこで本屋で実践編を見てなんだこれは…となりまして、シルバーあたりが一番ちかいのでしょうか?
シルバーとゴールドの中間くらいでしょうか?
2022/05/14(土) 23:06:58.45ID:QD9Lxy/Q0
実践編はゴールドにも出ないことが書いてあるね
文字通り「実践編」なわけで
729デフォルトの名無しさん (ワッチョイ bf80-75xT)
垢版 |
2022/05/14(土) 23:45:05.24ID:5OkHPR5v0
なるほど!有り難うございます!
javaシルバーなどの合格体験記を読むと黒本、紫本など多く出ていたので、実践編はしばらく無視で
まずは入門や黒紫あたりを頑張ってみます!有り難うございました!
2022/05/15(日) 16:21:09.80ID:SzIUVHZr0
ただブロンズはパズルみたいな問題が多いので
実践的かというとちょっとなあ
わざとインデントを間違えてあったり
(エディタのフォーマットを使えばすぐわかる)
結果がどうなるかを問うたり
(動かしてみた方が早いだろ)
とか
資格試験だからしょうがないといえばしょうがないけど
2022/05/15(日) 17:22:42.08ID:2xe246/YM
動かしてみた方が早いってのは程度問題じゃね
ほとんど頭に入ってなくて何でもいちいち動かさないとわからないんじゃ、書かれたソースを読むこともままならないし、書いたソースもバグだらけで実践的な開発力は不足してる
マニアックな挙動については丸暗記しなくてもいいけど、そんな問題ばかりというわけでもあるまい
2022/05/16(月) 08:23:43.20ID:DJgy/fWm0
2016/9、最強のJava入門書はどれか?
https
://ascii.jp/elem/000/001/238/1238080/

矢澤久雄「プログラムはなぜ動くのか」、高橋征義「たのしいRuby」などのベストセラー著者と、
業界人などが「スッキリわかる Java入門」について座談会

スッキリJavaは、オブジェクト指向を説明するという、明確な目的を持って作られた本。
そこが他の入門書と、大きく異なる

オブジェクト指向の本は、726 に書いたように、平山尚のセガ本と2冊しかない。
デザインパターンと言えば、Ruby だけど、Rubyにもオブジェクト指向の本はない
733デフォルトの名無しさん (ワッチョイ 67ba-hFP2)
垢版 |
2022/05/16(月) 20:35:54.76ID:5JkrIo610
batファイルからjarファイルを実行し、そのjarファイルの中ではpowershellのスクリプトを呼び出そうとしていますが、どうもそのスクリプトが呼び出せていないようです。

コードを書き込もうとしたらエラーが出るため、こちらにコードをのさせてもらいました。
ttps://pastebin.com/132WU7Py

commandはどのように記載すればいいでしょうか?

PowerShellのスクリプトは
Param($csvPath)
function openSesame($csvPath) {...}
openSesame $csvPath
です。
2022/05/16(月) 20:46:44.85ID:1nsjgUCXM
ちゃんと読んでないが、少なくとも
String command = "powershell.exe \"" + scriptPath + scriptName + "\" \"" + csvPath + "\"";
にしないと、じゃない?
Runtime.exec(String[]) 使ったほうが良いと思うけど
2022/05/16(月) 21:30:25.53ID:8AH+klOgM
あと見落としてたけどcsvPathのバックスラッシュ(円マーク)は2重にしないとダメ
(コピペしようとしたらバンされた)
736デフォルトの名無しさん (ワッチョイ 67ba-hFP2)
垢版 |
2022/05/16(月) 21:49:10.22ID:5JkrIo610
ありがとうございます!
Runtime.exec(String[]) は
Runtime.exec(String[] {
"powershell.exe",
"\"" + scriptPath + scriptName,
"\\",
\"" + csvPath + "\""
});
でやってみようとおもいます。

ちなみに、csvPathのバックスラッシュ(円マーク)は
scriptName + "\\" \"" + csvPath + "\"";
であっておりますでしょうか?
2022/05/16(月) 22:26:48.70ID:1nsjgUCXM
違う
「"」(ダブルクォート)が誰のために必要かを考えたほうが良い
Runtime.exec(String[])を使うならこんな感じ
あと PowerShell にスクリプトを渡すなら -File 引数が必要だし、セキュリティポリシーで許可されているか署名済みスクリプトでないと実行できないはずだけどその辺は大丈夫?
Javaの話じゃないし良く知らんから深入りはしないけど

https://pastebin.com/TyT89irG
2022/05/16(月) 22:28:30.85ID:31JGSkJkr
hello, worldは実行できてるの?
739デフォルトの名無しさん (ワッチョイ 67ba-hFP2)
垢版 |
2022/05/17(火) 03:18:10.90ID:j1OHUJ/90
ありがとうございます!
今のところ、javaとスクリプトの実行は出来ているので大丈夫かなと思いますが、セキュリティポリシも確認いたします。
検証用環境が不安定なため、再構築して実施してみます。
重ね重ねありがとうございます。
2022/05/17(火) 15:30:50.18ID:gaF/x0PY0
例えば、Ruby スクリプト内で、7-zip をコマンドとして呼び出して、
解凍せずに、アーカイブの内容を確認する場合、

Windows のProgram Files には半角空白が含まれるので、
"〜" で囲まないと、半角空白の前後で区切られてしまう

その場合、コマンド呼び出し、%x( ) 内にも、
%x("〜")と、"〜"で囲む必要がある

また、Windows のパス区切りは、\ だけじゃなく、/ も使える

# Program Files には半角空白があるので、要注意!
ZIP7_EXE_PATH = "C:/Program Files/7-Zip/7z.exe"

archive = "C:/Users/Owner/Documents/a.zip"

# Program Files には半角空白があるので、"〜" で囲む
# 解凍せずに、アーカイブの内容を確認する。l(list)
puts %x("#{ ZIP7_EXE_PATH }" l #{ archive })
2022/05/23(月) 15:34:25.88ID:EKPfjrK80
// for文使った関数定義で質問です
var obj = {};
var arr = [ 'left', 'top', 'width' ], a;
for( var i = 0 ; i < arr.length ; i++ )
obj[ ( a = arr[i] ) + '_test' ] = function() { console.log( a ); };

obj.left_test(); // 表示:width
obj.top_test(); // 表示:width
obj.width_test(); // 表示:width
// このようにconsole.log( a );の部分がfor文の最後の要素になってしまうのです
// obj.left_test();で'left',
// obj.top_test();で'top'が返るようにしたいのですがやり方を教えてください
2022/05/23(月) 15:41:49.37ID:EKPfjrK80
// 一応こんな風に連想配列挟めば行けるが挟まずにできるなら教えてクレメンス
var obj = {};
var arr = [ 'left', 'top', 'width' ], a;
for( var i = 0 ; i < arr.length ; i++ )
obj[ ( a = arr[i] ) ] = {
value : a,
test : function() { console.log( this.value ); }
};
obj.left.test(); // 表示:left
obj.top.test(); // 表示:top
obj.width.test(); // 表示:width
2022/05/23(月) 16:42:29.63ID:MJu82WEvM
>>741
節子、それJavaやない。JavaScriptや。
2022/05/23(月) 18:36:55.35ID:axCzR1iEr
クソワロタ
2022/05/23(月) 19:40:24.15ID:4NJpg5wx0
a の宣言位置がダメ
とりあえず宣言はこう変える

var obj = {};
var arr = ['left', 'right', 'width'];

後はお好きに

for (let a of arr) {
obj[a + '_test'] = () => console.log(a);
}

for (var i = 0; i <arr.length; i++) {
obj[arr[i] + '_test'] = function() { console.log(arr[i]); };
}

for(var i = 0; i <arr.length; i++) {
(function() {
var a = arr[i]
obj[ a + '_test'] = function() { console.log(a); };
})();
}

var は難しいから使うな let 使え
IE は捨てろ
2022/05/23(月) 20:16:42.73ID:EKPfjrK80
>>745
スレ違いのガイジにわざわざありがとう勉強になったわ
二番目の奴はundifinedだったが
2022/05/23(月) 20:59:25.65ID:4NJpg5wx0
すまん2番目もletじゃないとダメだわ
748デフォルトの名無しさん (アウアウウー Sac7-8jyA)
垢版 |
2022/05/24(火) 14:41:50.93ID:DFiEOcxBa
eclipseでdaoクラスのテスト実行しようとしたんですけどエラーが出ちゃって、原因わかる人いますか??
コンソールにはこう出てきました(****の部分は伏せてます)。


java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:****/********
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:706)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:229)
at com.example.chumon.dao.ConnectionManager.getConnection(ConnectionManager.java:13)
at com.example.chumon.dao.RegisterDaoTest.testFindByPk(RegisterDaoTest.java:18)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
749デフォルトの名無しさん (アウアウウー Sac7-8jyA)
垢版 |
2022/05/24(火) 14:43:00.05ID:DFiEOcxBa
(つづき)
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:725)
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:84)
750デフォルトの名無しさん (アウアウウー Sac7-8jyA)
垢版 |
2022/05/24(火) 14:44:08.70ID:DFiEOcxBa
(つづき)
at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115)
at org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98)
751デフォルトの名無しさん (アウアウウー Sac7-8jyA)
垢版 |
2022/05/24(火) 14:44:41.23ID:DFiEOcxBa
(つづき)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:214)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:210)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:135)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:66)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
752デフォルトの名無しさん (アウアウウー Sac7-8jyA)
垢版 |
2022/05/24(火) 14:45:40.34ID:DFiEOcxBa
(つづき)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
753デフォルトの名無しさん (アウアウウー Sac7-8jyA)
垢版 |
2022/05/24(火) 14:46:14.86ID:DFiEOcxBa
(つづき)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
754デフォルトの名無しさん (アウアウウー Sac7-8jyA)
垢版 |
2022/05/24(火) 14:47:10.24ID:DFiEOcxBa
(つづき)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)
at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)
at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:95)
at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:91)
at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:60)
755デフォルトの名無しさん (アウアウウー Sac7-8jyA)
垢版 |
2022/05/24(火) 14:47:28.25ID:DFiEOcxBa
(つづき)
at org.eclipse.jdt.internal.junit5.runner.JUnit5TestReference.run(JUnit5TestReference.java:98)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:40)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:529)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:756)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:452)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:210)
(おわり)
2022/05/24(火) 15:21:33.05ID:UVrOAcghM
一行目にドライバが見つからん、て書いてあるやん…
757デフォルトの名無しさん (ワッチョイ 979c-+hKh)
垢版 |
2022/05/24(火) 17:56:01.35ID:1ROUrZoc0
ここに載せるために **** でマスクしてるのにね
マスクする暇あったらもう少し手前を読めと言いたい
758デフォルトの名無しさん (アウアウウー Sac7-8jyA)
垢版 |
2022/05/24(火) 20:20:06.43ID:DFiEOcxBa
>>756
>>757
お二人ともわざわざコメントくださってありがとうございます。正直エラーの見方全くわかってなくて…。お二人のおかげで勉強になりました。>>756
2022/05/24(火) 20:24:11.01ID:CApFE9v50
プログラマに向いてないからやめちまえよ
仕事なんていくらでもあるぞ?
760デフォルトの名無しさん (ワッチョイ 275f-goY3)
垢版 |
2022/05/24(火) 20:26:47.52ID:a/LlQfSO0
荒らしかと思った
761デフォルトの名無しさん (ワッチョイ 275f-goY3)
垢版 |
2022/05/24(火) 20:27:24.40ID:a/LlQfSO0
メッセージを読まないやつってなんなんだろうな
2022/05/24(火) 20:49:18.78ID:1Vdq0D0oa
suitabeの時点でわからないから大量のアブラカタブラの一部と認識してシャットアウトするんじゃね
全部貼る生真面目さはある意味でプログラマに向いているかもしれない
763デフォルトの名無しさん (ワッチョイ 3e02-XROD)
垢版 |
2022/05/24(火) 21:33:22.74ID:EO1aEbC+0
英語でずらずら書かれると目が滑るのは分かる
2022/05/24(火) 21:48:31.90ID:p95++fvf0
大体のエラーは1行目を見れば十分なんだけどな
765デフォルトの名無しさん (ワッチョイ 5b63-CZg7)
垢版 |
2022/05/24(火) 22:39:15.25ID:7U+7Tuog0
依存性注入(DI)の使い方やメリットが
イマイチ理解できない
2022/05/25(水) 08:09:48.97ID:Y26hlNPT0
メソッドだけインスタンス化する方法あったよな?どうやるんだっけ
767デフォルトの名無しさん (ワッチョイ 9aad-qHb3)
垢版 |
2022/05/25(水) 09:23:11.43ID:o2j32ySo0
言ってる意味がわからん
2022/05/25(水) 10:10:32.46ID:h6Px9Rp10
>>765
メソッドには呼び出し側と呼び出され側があるけど
上位のメソッドから中間のメソッドを飛び越えて呼び出すと
真ん中のメソッドのテストをするときに下を書かなくていい
という意味らしい

それから一番上のメソッドだけを見るとどのメソッドが
使われているのか全部わかるので
見通しがよくなるんだって
2022/05/25(水) 10:35:28.00ID:Y26hlNPT0
Aクラス.testメソッド

A a = new A.test;みたいにしたい
2022/05/25(水) 10:46:28.28ID:w4VioXaG0
メソッドチェーンがしたいということなのかなんなのか
771デフォルトの名無しさん (ブーイモ MMba-+hKh)
垢版 |
2022/05/25(水) 10:48:48.28ID:302+byVKM
>>769
A.test をstatic にすればできる
ファクトリーで使われる
772デフォルトの名無しさん (ブーイモ MMba-+hKh)
垢版 |
2022/05/25(水) 10:51:39.19ID:302+byVKM
>>765
依存性注入(DI)はデータベースを想像すると分かりやすい
アプリはJDBCインターフェースに沿ってコードを書けばいい
実行時クラス(JDBCドライバー)は設定によって Oracle だったり SQL Server だったり差し替え可能になる
2022/05/25(水) 11:14:43.52ID:VrHeeTxq0
変数Aと変数Bを交換したいのですが
A swap B みたいな簡単な命令文はないでしょうか?

int Z=A;
A=B;
B=Z;

みたいなのは長いので嫌です
簡単に10文字くらいでできるやつありませんか?
2022/05/25(水) 11:28:34.00ID:nBArTk/cM
>>769
Predicate<T>とかFunction<T, R>とか
method reference(A::test)で検索してみて
2022/05/25(水) 12:48:55.66ID:l0paCdB/M
>>765
仰々しい名前がついてるけどパターンとしてのDIは
依存してる物(Dependency)を自分で生成せずに外部から渡す(Injection)ように作るというだけのこと

メリットはオブジェクトの生成とオブジェクトの使用という2つの役割を分けることでメンテナンスしやすいコードになる

利用側のコードをインターフェースみたいな抽象のみに依存するようにしておけば利用側の変更を伴わずに依存オブジェクトを異なる具体型に変更できる

ライブラリやフレームワークとしてのDI(DIコンテナ)は生成と注入をコンフィグやアノテーションベースで便利にやってくれるツール
2022/05/26(木) 09:58:11.66ID:SmauVUVkr
JDBCのたとえだと、urlのプロトコル部分でmysqlとか指定しているので、どちらかというとServiceLocatorな感。
777デフォルトの名無しさん (ワッチョイ 979c-+hKh)
垢版 |
2022/05/26(木) 10:55:53.52ID:EFS7Yvcl0
接続文字列(URL)も外部化されるのが普通ですよ
2022/05/26(木) 11:13:52.53ID:yTTmq901M
外部化することの意味がどれだけあるのかって思うときは多々ある
779デフォルトの名無しさん (ワッチョイ 979c-+hKh)
垢版 |
2022/05/26(木) 11:18:07.61ID:EFS7Yvcl0
JNDI便利だぞー
2022/05/26(木) 11:28:44.18ID:h2W/o/U9a
ユニットテストをまともにやれてないならDIの効果は限定的だろうな
781デフォルトの名無しさん (アウウィフ FFc7-goY3)
垢版 |
2022/05/26(木) 19:39:15.14ID:HcWlAHj5F
悪いJavaプログラマがわいてきた
2022/05/27(金) 13:37:04.29ID:fI0Liq3R0
A[100][100]の全てにBを代入したいのですが
A[][] ALL B みたいな簡単な命令文はないでしょうか?

for(int a=0;a<100;a++){
for(int b=0;b<100;b++){
A[a][b]=B;
}
}

みたいなのは長いので嫌です
簡単に10文字くらいでできるやつありませんか?
783デフォルトの名無しさん (ワッチョイ 9aad-SjAR)
垢版 |
2022/05/27(金) 16:51:46.30ID:Dxs4BKy40
>>782
java.util.Arrays クラスを見ると fill() が沢山あるので、これを利用すると楽。
2022/05/27(金) 17:54:48.19ID:Pva6dleK0
for(var x: A) Arrays.setAll(x, __ -> B);
2022/05/27(金) 18:58:36.97ID:cXi3VOa2a
fillのほうが早そうだな
786デフォルトの名無しさん (ワッチョイ 979c-+hKh)
垢版 |
2022/05/27(金) 19:58:18.78ID:9VIWhVy20
JavaでもSIMD使えるようになるらしいね
それ使えないかな?
2022/05/28(土) 02:58:47.26ID:m6AI4k4Ja
SIMD引っ張り出すようなお題かな?
簡単に書きたいというのがそもそもの要件で、ほぼ同じ簡潔さで書けるなら高速かつ合理的な方のメソッドを採用したほうがいいんじゃねという話じゃないの
788デフォルトの名無しさん (ワッチョイ b95f-GMjm)
垢版 |
2022/05/28(土) 22:37:32.56ID:I7eOXSK00
>>782 はそもそもネタなのと、ロジックが隠蔽されていればいいだけなので、反応しないこと。
789デフォルトの名無しさん (ワッチョイ 93bd-eOmp)
垢版 |
2022/05/29(日) 16:21:29.51ID:9pvhLD6G0
javaブロンズの勉強のために、紫本の案内通りにJDKをダウンロードし、 Windowsコマンドプロンプトで確認したところ正常にインストールできました。
それで、参考書はもうそのまま“メモ帳などでjavaのコマンドを書いてコンパイルしましょう”となってますが、JDKインストール後の具体的な実行環境がわかりません。
仮にメモ帳に実際のコマンドを書いて、それをどのようにコンパイルすれば良いでしょうか?
790デフォルトの名無しさん (ワッチョイ 4b02-ddm6)
垢版 |
2022/05/29(日) 20:48:42.29ID:K5OprcrC0
javaのコンパイルコマンドを使えばいいんでないの
791デフォルトの名無しさん (ワッチョイ 915f-LhUI)
垢版 |
2022/05/29(日) 21:26:07.69ID:wdRXATdO0
javac 使う
2022/05/29(日) 22:42:03.25ID:JgxM3r1ba
書いたコマンドをメモ帳あたりで保存しておいて、コマンドプロンプトに貼り付けるときに再利用してってところだと思う
batにしてもいい
VSCodeとかEclipseとか使うともっと楽
793デフォルトの名無しさん (ワッチョイ b95f-GMjm)
垢版 |
2022/05/29(日) 22:54:53.65ID:QmWhtWPG0
つまらないネタだな
2022/05/30(月) 20:15:42.11ID:egFVVTNIr
>>793
つまらんレスだな。
795デフォルトの名無しさん (ワッチョイ b95f-GMjm)
垢版 |
2022/05/31(火) 10:58:20.52ID:Q7HTN5en0
>>789
広島に行って、街のひとに聞く。
2022/05/31(火) 11:34:00.66ID:nthi7rsTa
>>795
ぷよぷよを作ったコンパイルじゃねーよ!
もう埼玉に移転してるし倒産してんだよ!
797デフォルトの名無しさん (ワッチョイ b95f-vMv+)
垢版 |
2022/05/31(火) 19:49:30.94ID:Q7HTN5en0
>>796
脳ミソをコネコネしてみる
798おれいいひと (ワッチョイ b95f-G2Bm)
垢版 |
2022/06/01(水) 11:29:26.94ID:C6S6DXn50
>>789
C(OS)ディスクにJAVAフォルダを作って、そこにSDKフォルダをぶち込む。
さらにメモ帳で作ったJavaをぶち込んで、拡張子を.txtから.javaに変更する。
続く。
2022/06/01(水) 19:35:04.03ID:SynhWSfY0
>>765
どちらかと言えば単体テストとかのためのイメージ
クラスAがクラスBが扱う場合で、クラスAをテストしたい場合はBを用意するのが面倒
だからDIとポリモーフィズムを利用してBに関係なくテストできるとか
800デフォルトの名無しさん (ワッチョイ b95f-vMv+)
垢版 |
2022/06/01(水) 20:18:55.26ID:vYinN+/U0
>>798
本を読んでいるのにわからないはずがないだろ
2022/06/02(木) 21:43:22.94ID:036rUGnq0
セマフォアで悩んでいます。

Proc1とProc2で排他制御やってますが、Proc2実行時にtrueにしている変数aがProc1でtrueが見えているんです。

Proc2をブレークして抜けるまではProc1の処理は待たされていることは確認できてます。

Proc2がsemaphore.release()して、Proc1のブロック解除で何故aがtrueなのか?

Semaphoreの第2パラメーターの意味が理解出来ません。trueでもfalseでも結果はおなじです。

--Proc1--
semaphore.acquire();
if (a) {
/* ここに来ちゃだめだが、何故か来る? */
}
semaphore.release();

--Proc2--
semaphore.acquire();
a=true;
/* 処理 */
a=false;
semaphore.release();

--変数定義--
public volatile Boolean a=false;

--初期化--
public semaphore = new Semaphore(1,true);
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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