JAVA関連のことを調べてみた2020年05月26日

JAVA関連のことを調べてみた2020年05月26日

Javaのクラス定義とインスタンスの生成

###クラス定義とインスタンスの生成
クラスからインスタンスを生成するには「new クラス名()」を使います。
【例】

“`Mainjava
class Main {
public static void main(String[] args) {
new Person(); //Person(今回は人)クラスのインスタンスを生成します
}
}
“`

“`Person.java
class Person{
}
“`
####変数にインスタンス
変数にインスタンスを代入するには「クラス型 変数名 = new クラス名()」を使います。
インスタンスの代入ではクラス型を指定し、クラス名がそのままクラス型になります。
【例】

“`Mainjava
class Main {
public static void main(String[] args) {
Person person = new Person();
}
}
“`

“`Person.java
class Person{
}
“`
####インスタンスメソッド
インスタンスメソッドは

元記事を表示

processingで作る簡単な障害物レースfor Java

#prossesingはプログラミング初心者におすすめ
prossesingはデザインアートを作ることができる環境です。
言語はJavaベースで作ってありますが、Pythonなど他の言語で書くことも可能です。
また、文の構造なども他のものに比べて見やすいので、まず簡単に動くプログラミングを作りたい!という方にはおすすめです。
ここでは、prossesing初心者の僕が1日で作れた簡単なゲームを紹介していきます。
コードの読みにくさはあるかもしれませんが、ご了承ください(汗

#今回作るゲーム
今回は、向かってくる障害物を避けるゲームを作っていきたいと思います。
機能としては、ジャンプ・衝突判定で作ることができます。
ここでは、コードと簡単な流れをご紹介します。
不明点があれば、コメントして頂けたらお答えします。

#コード紹介
簡単な流れだけご紹介します。
今回は棒人間を走らせるようにします。
まず必要な画像をダウンロードし、繰り返し表示するものはリストに格納していきます。

次に棒人間をジャンプさせるために、yの更新式を工夫します。
クリックした瞬間に上方向に速度を持たせ、重力に見立

元記事を表示

java(インターフェース)

#インターフェースとしてできる条件
**抽象クラスの親玉(一番上の方)**
①すべてのメソッドは抽象メソッド
②基本的にフィールドを持たない

###抽象度の高いHumanクラス

“`java:Human.java
public abstract class Human { //上の①②を満たしている
public abstract void run();
}
“`

###インターフェースとして宣言したHumanクラス

“`java:Human.java
public interface Human {
void run(); //public abstract を省略可能
}
“`

###インターフェースの実装

“`java:Hero.java
public class Hero implements Human {
}
“`

###インターフェースによる多重継承

“`java:Hero.java
public class PrincessHero
implements Hero,

元記事を表示

文字操作の基本(java)

# 文字操作(java)
初投稿です。
今回は文字操作についてまとめました。
基本的なものなので、わすれたときに見返そうと思います。

“`java
public class Main{
public static void main(String[] args){
String s1 = “Javaの勉強”;
String s2 = “Java”;
String s3 = “java”;
String s4 = “Javascript”;
String s5 = “javascript”;
String s6 = “”;
String s7 = “勉強Java”;
String s8 = ” j a v a “;
String s9 = “ j a v a ”;
String s10 = “jjjjjjjjjj”;
String s11 = “jjjjjaaaaavvvvvaaaaa”;

元記事を表示

JavaでintとIntegerの違い

# 読者
* Java覚えたて
* Android開発者
* Javaの復習

# JavaでintとIntegerの違い
**`intとIntegerの違い`**について掘り下げます。

* intとは?
* -2147483648~2147483647の範囲にある整数値を保持するための32ビットの変数型
* nullは利用不可
* プリミティブ型
* Integerとは?
* –2147483648~2147483647の範囲にある整数値を保持する変数型
* nullは利用可能
* オブジェクト型(クラス型)

Integer型はint型のラッパーであり、int型を操作するためのメソッドが用意されている。

# 利用例
たとえば、int型からString型へキャスト(型変換)したい場合などで利用されます。

“`Java
int price = 100;

// int -> Integer
Integer priceRap = price;

// Integer -> String
System.out.println(“pr

元記事を表示

SpringBoot中Property和Message的加载顺序问题

### Spring boot中属性文件加载顺序

– spring.profiles.include=test1,test2 按照test1,test2的顺序进行加载
– 无论key定义在哪个文件中,最终生效的总是最后一次加载的key的值

### Spring boot 中message文件加载顺序
– spring.messages.basename=messages1,messages2按照messages1,messages2的顺序进行文件加载
– 定义在同一个文件中的相同messageId,总是后加载的有效(覆盖)
– 定义在不同文件中的相同messageId,总是先加载的有效(之前property文件已存在则后续相同key不加载)

元記事を表示

【初心者向け】コンパイル時にクラスが見つからない時、どこを見直すべきか

# 記事の対象読者

Javaコマンドを自分でタカタカして、コンパイルとか実行周りの勉強してみようと思った時、
ソースコード書いて、フォルダ階層作って、ソースコードを配置して、と手順を踏み、
いざ、javacコマンドでコンパイルする段になると

「シンボルを見つけられません」

この1行のせいでいつまでたってもクラスファイルの作成ができないなんてことありませんか。
構文エラーって割と細かく情報が出るので、原因箇所の特定がしやすいのですが
ことクラスが見つからないってエラーに関しては実装内容ごとに修正点は違うので、
「ここをこう直せば直るよ!」というものはなかったりします。

ですが、初学者に真に必要なのは
「どう直すか」という個別ケースにしか使えない情報ではなく、
「仕組み上、ここを見れば原因がわかる」という使い回しのきく
デバッグの知識なんじゃないかなと思います。

この度、コンパイル周りの仕組みを勉強したら「シンボルを見つけられません」に対して
どのようにアプローチすればいいのか、というものがそれなりに見えてきたので、
現時点での私のデバッグ手順に関して、紹介したいなと思います。

元記事を表示

[Quarkus]GCP Pub/Subサンプルをそのままコピペしても動かない罠

https://stackoverflow.com/questions/56754174/java-util-concurrent-rejectedexecutionexception-while-shutting-down-speechclient

元記事を表示

Javaのコンソールへの入力

###コンソールへの入力
コンソールに値を入力し、その値をプログラム内で使うことです。
コンソールへの入力を受け取るにはScannerというライブラリを使います。
Scannerは「import java.util.Scanner」を使います。
【例】

“`Main.java
import java.util.Scanner;
class Main {
public static void main(String[]args) {
Scanner scanner = new Scanner(System.in); //Scannerで初期化
String name = scanner.next(); //文字列の入力の受け取り
}
}
“`
new Scanner(System.in);で初期化します。
scanner.next();で文字列の入力を受け取ります。
###Scannerの使い方
まずScannerを初期化しscannerという変数にいれています。
Scannerではこの初期化したものを代入した変数を使ってメソッドを呼び出します。
scanner

元記事を表示

JavaはWord文書にテーブルを作成します

Word文書では、表を使用することにより、テキストの内容をより簡潔かつ明確にすることができ、同時にデータの表示をより明確かつ直感的にすることができます。この記事では、Javaコードを使用してWord文書にテーブルを作成し、セルの背景色を設定する方法を紹介します。

**使用ツール:** [Free Spire.Doc for Java](https://www.e-iceblue.com/Download/doc-for-java-free.html)(無料版)

**JARファイルのインポート方法**
**方法1:** Free Spire.Doc for Javaパッケージをダウンロードして解凍し、Spire.Doc.jarパッケージをlibフォルダーからJavaアプリケーションにインポートします。

方法2: mavenを使用している場合は、pom.xmlファイルに次の依存関係を追加する必要があります。

“`java


com.e-iceblue

元記事を表示

Macでインポートする際、Gradleビルドが止まってしまう時

# 発生している問題・エラーメッセージ
表題の通りSTSでSpringbootを使用したアプリケーションの作成時にインポートをする際、
ビルド中に固まってしまい、STSが完全に止まってしまった。
エラーメッセージを見てみると

“`
org.gradle.tooling.BuildException: Gradle distribution ‘https://services.gradle.org/distributions/gradle-5.4.1-bin.zip’ を使用してビルド・アクションを実行できませんでした。
“`
が出てくる。

#結論
https://stackoverrun.com/ja/q/11329562
スクリーンショット 2020-05-21 16.01.59.png

こちらの回答

元記事を表示

DaprでRubyとJavaを連携させてみる

## はじめに

[マイクロサービス開発を容易にするDaprをJavaで利用してみた](https://qiita.com/koduki/items/bf50cb3aa14b88243ad2)に引き続きDaprです。

[チュートリアル](https://github.com/dapr/samples/tree/master/1.hello-world)のStep6に相当します。
コードは下記を参照
https://github.com/koduki/example-dapr/tree/v01

## 構成概要

チュートリアルではPythonですが、趣味の問題でRubyを使っています。
この構成のポイントはRubyとJavaは直接通信しないどころはRubyはあくまで自分のサイドカーのDaprと話すのであってJavaを起動しているDaprとは直接話さないことです。

![dapr_sample01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/54904/9de0ce94-b09b-966e-d76d-

元記事を表示

StringBuilderメモ

可変な文字列であるStringBuilder。文字列を高速に連結するのに使うらしいです。
今回もStringBuilderのメソッドを使用して、使い方を学んでいきます。

#append
appendを使って文字列の追加処理が可能です。
boolean型、char型、String型、配列などいろんな型を文字列として追加することができます。

“`java
StringBuilder sb = new StringBuilder(“おはよう”);

//boolean
boolean bool = true;
System.out.println(sb.append(bool));

//char
char c = ‘A’;
System.out.println(sb.append(c));

StringBuilder sbr = new StringBuilder(“Aさん”);

//配列
String[] str = {“こんにちは”,”おやすみ”};
System.out.println(sbr.append(str[0]));
System.out.println(sb

元記事を表示

[Spring Boot] ページング処理簡単レシピ

# 環境

言語 : java 1.8
フレームワーク : spring boot 2.2.4.RELEASE (spring-boot-starter)
テンプレートエンジン : thymeleaf 2.2.4.RELEASE (spring-boot-starter)
データベース : H2 1.4.200 (spring-boot-starter)
orm : data-jpa 2.2.4.RELEASE (spring-boot-starter)

# ソースコード

**Entity**

“` java
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Entity
public class Board {

@Id @GeneratedValue
private String id;

private String title;

private String user;

// Gett

元記事を表示

Ruby Python Java 大文字小文字を区別しないソート

# はじめに
ソートと言えば、数値順・辞書順ですが、それ以外のソートについて調べてみました。
# 嵌った話
@jag_507 さんの*[AtCoderでRuby学習10【第一回アルゴリズム実技検定 DoubleCamelCase Sort】](https://qiita.com/jag_507/items/5cc3e09121679ef48f51)*を読んで、*[AtCoder 第一回アルゴリズム実技検定 F – DoubleCamelCase Sort](https://atcoder.jp/contests/past201912-open/tasks/past201912_f)*をやってみましたが、ソートがうまくいかないです。

“`sort.rb
a = [“FisH”, “DoG”, “CaT”, “AA”, “AaA”, “AbC”, “AC”]
a.sort
# => [“AA”, “AC”, “AaA”, “AbC”, “CaT”, “DoG”, “FisH”] # 実際の返り値
[“AA”, “AaA”, “AbC”, “AC”, “CaT”, “DoG

元記事を表示

Java volatileを使用した際の性能影響について検証

#概要
volatileを使用した際の性能影響について検証したメモページ。

#volatileとは
フィールドに付ける修飾子。
マルチスレッドのプログラムの場合に、スレッドがフィールドの値をキャッシュする可能性がある。
volatileを付けると、キャッシュの対象外にすることができる。
(本ページではvolatileの役割についての詳細は割愛。)

#性能検証
##性能検証に使用した環境
**マシンスペック**
CPU:Intel(R) Core(TM) i5-2400S CPU
RAM:8GB
OS:windows10 64ビット

**実行環境**
Eclipse(2020-03 (4.15.0))
Java8

##volatileを使用した場合の性能
volatileを付与した状態で、int型のフィールドを1億回カウントアップする処理の時間を計測。

“`java
private volatile int cnt = 0;

private long exe() {

long start = System.currentTimeMillis

元記事を表示

Javaのクラスの使い方や定義、import

###他クラスのメソッドの呼び出し
クラス名.メソッド名()とすることで、クラスのメソッドを呼び出せます。
【例】

“`Main.java
class Main {
public static void main(String[] args) {
Person.hello(); //Personがクラス名でhelloがメソッドです
}
}
“`

“`Person.java
class Person { //Personがクラス名です
public static void hello() { //helloがメソッドです
System.out.println(“おはよう”);
}
}
“`
上記のようにMain.javaのPerson.hello();でPerson.javaのPersonをクラスを呼び出します。
ちなみに、クラスの定義は「class クラス名」となります。
クラス名の最初の文字は大文字にし、ファイル名は「クラス名.java」に必ずします。
【例2】

“`Main.java
public class Main {

元記事を表示

Spring Boot で簡単RESTful APIを作成する

# 目的

RESTってなんだかお堅いイメージ?があるかもしれませんが、実のところシンプルで使いやすいインタフェースだと思います。
実際、WebAPIではよく使われていますね。利用することは多いけど作るのはなんだか大変そう。。でも実は、アプリケーションフレームワークを使用するとこういうデザインパターン系はとても**楽に**造れたりします。

そこで、ここではSpring Boot を使用して**簡単に**RESTful APIを作成してみたいと思います。インタフェースを作るだけだと使いどころが分かりにくいので、Androidアプリから利用する部分もちょっとだけ載せます。

## そもそもRESTって

RESTって技術書なんかでは難しく解説していたりするけど、私の理解ではHTTPサーバーによってリソースを出し入れするインタフェースを提供することだと思っています。
そうするとWebAPIはみんなREST?ってことになりますが、ステートレスでシンプルなリソースであることがRESTの特長。つまりSQLみたいにHTTPのリクエストを使用するってことですね。

RESTに出し入れするデータのフ

元記事を表示

【JavaServlet】千里の道も一歩から 一歩目

#Servletとは
WebアプリケーションをJavaで実現するための仕組み
#Webアプリケーションとは
会員制のサイトを例に挙げる

1. クライアント(PCやスマホ)に、ユーザ情報を入力してログイン
2. サーバーが、送られてきたユーザ情報を受け取る
3. データベースなどを利用してユーザやパスワードが合ってるか確認する
4. 合っていたらマイページを表示、間違っていたらログイン画面に戻してエラーメッセージを表示

ざっと下のようなイメージ
servlet2.png
サーバーに送る情報を「リクエスト」、サーバーから送られてくる情報を「レスポンス」という
また、クライアントの画面はHTMLではなくjspと呼ばれるファイルで構成される(中身はほぼHTMLと同じで、javaのコードも書くことが可能)
#プロジェクト

元記事を表示

AtCoder【PracticeA】技術メモ

#はじめに
*AtCoder*を始めたので、わからないことをメモしていく
関西弁に憧れを抱いているので関西弁を使用

#Scannerクラスとは?
標準入力を取得するクラス
取得した入力情報を使って何か処理をしたいときや、対話型のプログラムで使用

“`
Scanner scanner = new Scanner(System.in);

System.out.println(“何か入力してや”);

String input = scanner.nextLine();

System.out.println(input + “が入力されたで”);

scanner.close();
“`
これを実行すると…

“`
何か入力してや
“`
と表示され、
「おはよう」と入力すると

“`
何か入力してや
おはよう
おはようが入力されたで
“`
と表示される

#解説
Scannerクラスのインスタンスを生成し、引数にSystem.inを指定

*System.in*…InputStreamのオブジェクトで、標準入力(通常はキーボードからの)のこと

next

元記事を表示

OTHERカテゴリの最新記事