JAVA関連のことを調べてみた2022年02月13日

JAVA関連のことを調べてみた2022年02月13日
目次

カップラーメン作っている間で覚えられるEnumの使い方 JavaGold取得への道  

僕のようなJava初心者や、JavaGoldの資格取得に向けて、勉強をしている方にこの記事がお役に立てれば幸いです。

##Enumとは?
一言で表すと、定数をまとめて定義するものです。

##どの場面で必要か?
最も頻繁に利用するのはEnum型同士を比較して、値がどれに該当するか調べるのに使われる(引用 [Javaの定数はEnumで! ](https://www.bold.ne.jp/engineer-club/java-enum))

#どのように使うの?
###定義方法
Enumの定義は以下の構文で行います。

“`
アクセス修飾子 enum 列挙名{列挙子1,列挙子2….}
“`
これだけでは、イメージが湧かないと思うので、サンプルコードをご覧ください。

“`Sports.java
public enum Sports{
SOCCER,
BASEBALL,
BASKETBALL,
}
“`
“`main.java
public class Main{
public static void main (

元記事を表示

「はじめての Django アプリ作成」をSpring WebFluxでやってみた、その 1

# はじめに
この記事はDjangoの公式チュートリアル[「はじめての Django アプリ作成」](https://docs.djangoproject.com/ja/4.0/intro/tutorial01/)と同じものをSpring WebFluxで作成することでDjangoとSpring WebFluxの違いを理解することを目的としています。

# 違い一覧
DjangoとSpringでは同じコンセプトでも用語が結構違います。

|Django|Spring|
|:———–|:————|
|Model(モデル)|Model(モデル)|
|Template(テンプレート)|View(ビュー)|
|View(ビュー)|Controller(コントローラ)|

# はじめてのアプリ作成、その 1

## プロジェクトを作成する

### Django
Djangoでは`django-admin`を使ってプロジェクトを作成できます。

“`bash
django-admin startproject mysite
“`

### Spring WebF

元記事を表示

1分でわかる匿名クラス JavaGold取得への道(内部クラス編)

徹底攻略Java SE 11 Gold問題集(黒本)を読んで最初にぶち当たる壁「内部クラス」ついて、4つの記事に分けてまとめました。
僕のようなJava初心者や、JavaGoldの資格取得に向けて、勉強をしている方にこの記事がお役に立てれば幸いです。
#はじめに
内部クラスには4種類あります。
今回はその中の匿名クラスについて解説していきます。

・[インナークラス](https://qiita.com/110shun/items/882699c71db9dccea7a8)
[・staticインナークラス](https://qiita.com/110shun/items/ee2c3383b4817751ba7b)
・[ローカルクラス](https://qiita.com/110shun/items/da476b32117f904ea4d4)
・匿名クラス?

##匿名インナークラスとは?
一言で表すと、インターフェースを実現したクラスなどそのクラスとして名前のないクラスを宣言したものです。
そのクラスがどのようなフィールドやメソッドを持つべきかクラスの実装内容を定義できます。

元記事を表示

1分でわかるローカルクラス JavaGold取得への道(内部クラス編)

徹底攻略Java SE 11 Gold問題集(黒本)を読んで最初にぶち当たる壁「内部クラス」ついて、4つの記事に分けてまとめました。
僕のようなJava初心者や、JavaGoldの資格取得に向けて、勉強をしている方にこの記事がお役に立てれば幸いです。
#はじめに
内部クラスには4種類あります。
今回はその中のローカルクラスについて解説していきます。

[・インナークラス](https://qiita.com/110shun/items/882699c71db9dccea7a8)
[・staticインナークラス](https://qiita.com/110shun/items/ee2c3383b4817751ba7b)
・ローカルクラス?
[・匿名クラス](https://qiita.com/110shun/items/e912bab6c55982f50494)

##ローカルクラスとは?
一言で表すと、メソッドの中にクラスを定義したクラスのことを指します。
メソッドごとに実装内容を変えることできます。
知っておいて頂きたいルールが2点ごさます.
 __・ローカルクラスが参照する

元記事を表示

Androidの画面分割で固定指示してた画面が勝手に回転してさらにアクティビティが勝手に再生させられてしまう件

画面を縦向きに固定したければ
マニュフェストのactivityのところに

android:screenOrientation=”portrait”

と書けば確かにそうなるのだが、画面分割で2画面表示にしたとき、スマホを横向きにすると、上記の設定にしているにも関わらず勝手に回転する(完全に防ぐにはOS側でrotationをoffにする必要があるがめんどくさい)。
で、回転それ自体は別に害はないのだが、回転すると、activityが再生されて計測がリセットされるのがとにかく困った。調べてみると、再生を防ぐには、同じくマニュフェストに

android:configChanges=”keyboardHidden|screenSize|orientation”

などというふうに書けば良いとあり、これで解決しましたのでメモしておきます。
回転を止めるにはどうしたら良いのだろう。

元記事を表示

2分でわかるstaticインナークラス JavaGold取得への道(内部クラス編)

徹底攻略Java SE 11 Gold問題集(黒本)を読んで最初にぶち当たる壁「内部クラス」ついて、4つの記事に分けてまとめました。
僕のようなJava初心者や、JavaGoldの資格取得に向けて、勉強をしている方にこの記事がお役に立てれば幸いです。
#はじめに
内部クラスには4種類あります。
今回はその中のstaticインナークラスについて解説していきます。
・[インナークラス](https://qiita.com/110shun/items/882699c71db9dccea7a8)
・staticインナークラス?
・[ローカルクラス](https://qiita.com/110shun/items/da476b32117f904ea4d4)
・[匿名クラス](https://qiita.com/110shun/items/e912bab6c55982f50494)
##staticインナークラスとは?
一言で表すと、クラスの中で定義したstaticで修飾したクラスのことを指します。
知っておいて頂きたい特徴が2点ごさます.
 __・外部クラスの非staticなフィールドや

元記事を表示

2分で分かるインナークラス JavaGold 取得への道(内部クラス編)

徹底攻略Java SE 11 Gold問題集(黒本)を読んで最初にぶち当たる壁「内部クラス」ついて、4つの記事に分けてまとめました。
僕のようなJava初心者や、JavaGoldの資格取得に向けて、勉強をしている方にこの記事がお役に立てれば幸いです。
#はじめに
ネストしたクラスには4種類あります。
今回はその中でインナークラスについて解説していきます。

・インナークラス??
[・staticインナークラス](https://qiita.com/110shun/items/ee2c3383b4817751ba7b)
[・ローカルクラス](https://qiita.com/110shun/items/da476b32117f904ea4d4)
[・匿名クラス](https://qiita.com/110shun/items/e912bab6c55982f50494)

#インナークラスとは? 
一言で表すと、クラスの中に定義したクラスのことをインナークラスと言います。
###使い所
 ・パッケージの中でも隠蔽したい時に使います。

身近な例に例えると、たとえ血の繋がっている

元記事を表示

【Java】3DESとBASE64での暗号化/復号化 実装メモ

# 3DESとは
3DESまたはTripleDesとはDES暗号化アルゴリズムを各データブロックに3回適用する対称鍵ブロック暗号です。

今回はJavaでの3DESによる暗号化/復号化、BASE64でのエンコード/デコードの処理を実装したので実装メモとして記載します。

# 1.秘密鍵の生成

#### キーの生成

“`java
private static final byte[] SECRET_KEY = “6ydjai8dnfy4ud9d8dud7dud”.getBytes();//24-byte
“`

24バイトのキーを使用します。

#### キーをSecretKeySpecでラップし、アルゴリズムと組み合わせる

“`java
private final String CRYPT_ALGORITHM = “DESede”;

SecretKeySpec secretKeySpec = new SecretKeySpec(secretKey, CRYPT_ALGORITHM);
“`

今回はDESedeを使用していますが、[Javaセキュリティ標準アルゴリズ

元記事を表示

コンピュータとオセロ対戦42 ~ネットワーク~

https://qiita.com/tt_and_tk/items/068f2afde6db637e189f

[前回](https://qiita.com/tt_and_tk/items/bd49dd220f8c9a8eadd5)

# 今回の目標
[前回](https://qiita.com/tt_and_tk/items/bd49dd220f8c9a8eadd5)作成した層を使って、ネットワーククラスを作成します。
# ここから本編
## 修正点
### Sigmoid.java
シグモイド関数の計算が間違っていました。
今までは以下のように計算していましたが、

$$y = \frac{1}{1+e^x}$$

正しくは

$$y = \frac{1}{1+e^{-x}}$$

です。
プログラムも修正しました。
というか「\$\$」で囲むことで $\LaTeX$ 使えるんですね知りませんでした。

### Layer.java
空のコンストラクタを追加しました。
また、ネットワーククラスで用いるためのコンストラクタを新しく用意しました。こちらではノードのインスタンス化を行って

元記事を表示

Javaのオブジェクト指向について学習したのでまとめる

今までなんとなくでしか使ってこなかったオブジェクトについてきちんと理解をしておこうと思ったのでまとめてみることにしました。

今までのオブジェクトのイメージとして

“`
・同じ分類のデータの塊(配列など)
・同じ役割の処理の集合体
“`

と捉えていました。しかし今回でそれではダメだなと感じたのでここで改めて強制をしておこうと思いましたので頑張ってまとめてみます。
#オブジェクトについて
Javaのオブジェクトの雛形はクラスです。
そしてオブジェクトというのは、直訳すると「物」「対象」といった意味になります。プログラミングにおいては同じ分類や役割を持ったデータや処理の集合体を言います。

オブジェクトには操作と属性という概念があります。
何かというと、

“`
 ・ 属性…Javaプログラムでは「変数」に該当。
 ・ 操作…Javaプログラムでは「メソッド」に該当。
“`
#オブジェクト指向の使用例

オブジェクト指向の使い方の例としては、同じ場所に複数の役割の処理を書く時に分類する時につかいます。

例えば作業をしていて、同じ場所にそれぞれ違うファイルをろくにフォルダ分け

元記事を表示

Log4j2をとりあえず javacで動かす話

## はじめに
この記事は、Javaの動作を実感することを目的として作成しています。そのため、
イマドキがどうとか、Mavenがどうとか、IDEがどうとか。そういった議論は一切省きます。これを知って初めて効率のよいやり方に移らないと、根本的な事が抜け落ちてしまうからです。

## 資料の目的
誰かがかいたライブラリを自分のプログラムに組込むまでの手順を整理し、クラスパスやパッケージ
importなどの概念を獲得することが目的です。そのために、「プログラム実行時に動作を目で見て確認できる」Log出力機能を選定します。選定ライブラリは今を時めくLog4j2です。僕のお友達が、仕事でよくLog4j2の名前を聞くということで。せっかくだからこいつを使おうと決めました。だから**Log4j2の使い方とか、設定方法とかも全くの範囲外です**

## 前提条件

+ jdkが既に導入されていること(javac/javaコマンドが利用可能であること)
+ インターネットに接続できること。
+ Windows でやってね。(コマンドプロンプト) Linuxは適宜読み替えてください。

“`
>jav

元記事を表示

PAY.JPでクレジット決済機能を実装する【Java】

#概要#
PAY.JPという決済代行をしてくれるサービスが提供しているWebAPIを使ってクレジットカード決済機能を実装してみました。
このAPIを使うと、入力したカード情報をトークン化してPAY.JPに送り、その送られてきたトークンをもとにPAY.JPが決済代行をしてくれるそうです。

開発環境はJava/Mavenです。

#PAY.JPのアカウント作成#
[公式サイト](https://pay.jp/)にアクセスして「申し込む」をクリックし、アカウントを作成します。
![pic1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2521820/99bb70fa-d2db-e97f-9ad9-60103ed91c6d.jpeg)

登録後、ログインして左の「API」よりAPIキーを確認します。

![pic3.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2521820/267c27da-cbc7-2a0e-8144-

元記事を表示

言語を比べると見えてくるもの


この記事は[リンク情報システム](https://www.lis.co.jp/)の「TechConnect!2022年2月」のリレー記事です。
engineer.hanzomon のグループメンバによってリレーされます。
(リンク情報システムのFacebookは[こちら](https://ja-jp.facebook.com/lis.co.jp/)から)

TechConnect!2022年2月のインデックスは[こちら](https://qiita.com/hs-lis/items/69eee14fd7bec92a854f)

#はじめに
初めて記事を書くので、何を書くかで悩みましたが、
IT業界に入って一番最初に気になったことにしました。

色々なプログラミング言語があるけれど、実際どの言語が何に適しているのか、
言語ごとの実際の内容の差はどうなのか……
今回は、どこでも聞いたことのある言語4つ程に絞って軽く書いていきます。

#言語毎の特徴と、利用されている分野

**■Java**
よく名前を聞く言語1位と言っても良いのではと言う言語

・特徴
 どん

元記事を表示

Javaのオーバーロードについて学習をしてみた

今回はJavaのオーバーロードについて学習をしたのでまとめてみようと思います。

#オーバーロードとは

オーバーロードというのは、同じ関数名で様々な値を扱いたい時に役に立ちます。
処理は同じだけど、渡す引数の値が違うときにそれぞれの関数を作成していくことは間違いではありません。
しかし、どうせ処理が同じなら同じ関数名で使えるようにしたほうがいちいち違う関数について覚える必要がない上に、設計書にそういったことを書かなくていいので便利です。
今回はそんな便利なオーバーロードの使い方について紹介したいと思います。

#書き方

“`main.java
public static void main(String args[]){

int a = culclate(11, 2);
System.out.println(a);

String b = culclate(“算数”, “数学”);
System.out.println(b);
}

private static Integer culclate(Integer culc

元記事を表示

コンピュータとオセロ対戦41 ~層~

https://qiita.com/tt_and_tk/items/068f2afde6db637e189f

[前回](https://qiita.com/tt_and_tk/items/6b9612571e602c417b42)

# 今回の目標
[39 ~ライブラリ、ノード作成~](https://qiita.com/tt_and_tk/items/e91bfc5c83bd8ee73d75)に引き続き、層の作成を行います。
# ここから本編
層作成の前に、[39 ~ライブラリ、ノード作成~](https://qiita.com/tt_and_tk/items/e91bfc5c83bd8ee73d75)で作成した各クラスにtoStringメソッドを定義しました。
Nodeクラスの表記で入力数が1引かれているのは、this.inにはバイアスも含まれているからです。

“`java
// 活性化関数クラス(名前を返すだけ)
@Override
public String toString(){
return “”;
}

//

元記事を表示

JavaでPDFをHTMLに変換してストリーミングに保存する方法

この記事では、Javaバックエンドコードを使用してPDFファイルをHTMLに変換し、変換されたHTMLファイルをストリームに保存する方法について説明します。変換を実装する場合、SVGを埋め込むかどうか、画像を埋め込むかどうかなど、関連する変換プロパティを設定できます。変換を実現するための方法と手順は次のとおりです。

##1.jarパッケージをインポート

今回の変換の方法は、**[Free Spire.PDF for Java](https://www.e-iceblue.com/Download/pdf-for-java-free.html)**の中のSpire.Pdf.jar free jarをインポートすることで実現されます。jarパッケージをローカルにダウンロードして解凍し、libフォルダーでSpire.Pdf.jarファイルを見つけることができます。そして、次の手順を実行してインポートを完了します。
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278784/8d2ebfb9-cb

元記事を表示

0209スピーチ用

### プログラミング言語

Hello, World!プログラム

##Java

![tio.run_ (4).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2354903/6dd72914-e79f-0c05-f259-91315199fa31.png)

## Cow
牛の鳴き声”MOO”をMとm、Oとoに分け、3文字の組み合わせをトークンと解釈する。それ以外の文字はコメントとして扱う。

![tio.run_ (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2354903/7d420a82-cae0-4a95-d344-66dd7bbfd4f4.png)

# WhiteSpace
通常入力画面:
![tio.run_ (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2354903/7dd3f0b3-10b0-4

元記事を表示

【Java】paizaでの学習を通して学んだJavaメソッドのチートシート

#はじめに
はじめまして!初投稿をさせていただきますヨシカワです!
大学でpaizaラーニングについての紹介があり、興味を持って取り組み始めました。
その際に、知らなかった便利なJavaメソッドを知れたので記事にしようと思いました。
間違いや補足があればご指摘お願いします。

#目次
[文字列aの長さを取り出す](#文字列aの長さを取り出す)
[文字列aに特定の文字列sが含まれているかどうか](#文字列aに特定の文字列sが含まれているかどうか)
[文字列aからn-m番目の文字列を取り出す](#文字列aからn-m番目の文字列を取り出す)
[文字列aを分割し分割した文字列を配列として格納する](#文字列aを分割し分割した文字列を配列として格納する)
[文字列aを数値へ変換する](#文字列aを数値へ変換する)
[数値iを文字列に変換する](#数値iを文字列に変換する)
[数値aの絶対値を求める](#数値aの絶対値を求める)
[参考にさせていただいたページ](#参考にさせていただいたページ)

##文字列aの長さを取り出す
“`java:
a.length()
“`
半角、全角関係なく返し

元記事を表示

Javaのインターフェースについて学んだのでメモ

Javaのインターフェースについてとりあえず軽く調べたので、とりあえずまとめてみようと思います。

#interfaceとは

interfaceは定数とメソッドの定義しかすることができません。
そして、宣言する場所ですが、これはクラスの外で定義をします。つまり、クラスの中で宣言をしてしまうとコンパイルエラーになってしまうので注意が必要です。
そして、interfaceで宣言した定数はどこでも使えるというわけではなく、その定数を使う場所を宣言しなくてはいけません。
そのやり方については、次の場所で説明します。

#interfaceの書き方

“`
interface インターフェース名{}
“`

と書きます。
具体的には

“`
interface HogeInterface{}
“`

のようにして宣言します。
いまインターフェースの宣言のやり方を宣言したので、次から実際にインターフェースで定数を宣言して、実際にそれを使えるようにするまでやっていきます。

今手元には、interfaceであるhogeInterfaceと、hogeクラスがあります。

まず最初に、inte

元記事を表示

コンピュータとオセロ対戦40 ~行列計算~

https://qiita.com/tt_and_tk/items/068f2afde6db637e189f

[前回](https://qiita.com/tt_and_tk/items/e91bfc5c83bd8ee73d75)

# 今回の目標
行列計算用のクラスが必要だと思ったので作ります。
# ここから本編
## 現在のディレクトリ構成
現在のディレクトリ構成は以下の通りです。
ファイルは省略しています。

“`
MyNet
├── layer // 層のパッケージ(今は空)
├── matrix // 行列のパッケージ(今回作成)
├── nodes // ノードのパッケージ(前回作成)
│   └── out_function // 活性化関数のパッケージ(前回作成)
└── optimzer // 最適化関数のパッケージ(今は空)
“`

## メンバ変数とコンストラクタ
できるだけnumpyのndarrayに近い形にしたいと考えています。
演算子のオーバーライドができない時点で不可能ではありますが、できるだけ近い感覚で使いたいです。
なんとなくい

元記事を表示

OTHERカテゴリの最新記事