Содержание

Руководство по Java Core. Базовые операторы. – PROSELYTE

Для манипулирования переменными в языке Java пердусмотрено множество опреаторов. Все опреаторы мы модем поделить на такие группы:

  • Арифметические операторы
  • Операторы сравнения
  • Битовые поераторы
  • Логические операторы
  • Операторы присваивания
  • Другие

Рассмотрим эти группы отдельно.


 

Арифметические операторы

Этот тип операторов используется для математических операций.

Представим, что у нас есть две целочисленные переменные (int) A = 50, B = 20.

Примеры:

+ (Сложение) A + B = 70
– (Вычитание)A – B = 30
* (Умножение)A * B = 1000
/ (Деление)A / B = 2
% (Остаток от деления)A % B = 10
++ (Инкремент)A++ = 51
— (Дикремент)B– = 19

Операторы сравнения

Результатом оператора сравнения является логический тип boolean, который говорит нам, является ли данное утверждение правдой (true) или ложью (false).

Представим, что у нас есть две целочисленные переменные (int) A = 50, B = 20.

Примеры:

== (Равен) (A == B) -> false
!= (Не равен)(A != B) -> true
> (Больше, чем)(A > B) -> true
< (Меньше, чем)(A < B) -> false
>= (Больше, чем или равно)(A >= B) -> true
<= (Меньше, чем или равно)(A <= B) -> false

Битовые операторы

В языке Java существует ряд битовых операторов, которые поддерживают целочисленные типы данных.

Битовые операторы позволяют нам выполнять побитовые операции.

Представим, что у нас есть две целочисленные переменные (int) A = 50, B = 20. B) -> 0010 0110~ (Побитовое дополнение)( ~A ) -> 1100 1101
<< (Побитовый сдвиг влево)(A << 1) -> 100 (0110 0100)
>> (Побитовый сдвиг вправо)

(B >> 2) -> 5 (0000 0101)
>>> (Побитовый сдвиг вправо с присвоением)
( A >>> 3) -> 6 (0000 0110)

Логические операторы

В языке Java поддерживаются 3 логических оператора, все они приведены таблице ниже.

Представим, что у нас есть две логические переменные (boolean) T = true и F = false.

&& (Логическое ‘И’)    (A && B) -> false
|| (Логическое ‘ИЛИ’)
   (A || B) -> true
! (Логическое ‘НЕ’)
   !(A || B) -> false

Операторы присваивания

В языке Java есть 11 операторов присваивания. Рассмотрим их на примерах.

Представим, что у нас есть две целочисленные переменные (int) A = 50, B = 20 и некая переменная С, значение которой, пока не присвоено.

=
   С = A + B ( C == 70 )
+=   A += B (A == 70)

-=
   A -= B (A == 30)
*=   B *= A (B == 1000)
/=   A /= B (A == 2)
%=
   A %= B (A == 10)
<<=
   B <<= 2 (B == 80)
>>=
   A >>= 2 (A == 12)
&=   B &= 2 (B = B & 2 )
^=
   A ^= 2 (A == 48)
|=   A |= 3 (A == 51)

Другие

К другим операторам в языке Java относится только 1. Это тернарный оператор ветвления IF.

Более подробно мы рассмотрим IF далее, а пока приведём общую форму записи:

Допустим у нас есть логическая переменная (boolean) isActive, значение которой нам неизвестно.

Пример:

int a = (isActive) ? 100 : 200.

Разъяснение:

Если isActive = true, тогда a = 100.

Если isActive = false, тогда a = 200.


 

В этом уроке мы рассмотрели операторы для манипулирования переменными в языке Java.

Более подробно с опрераторами в языке Java можно ознакомиться в спецификации языка Java (Java Language Specification).

В следующем уроке мы рассмотрим массивы в языке Java и из виды.

 

If-else в Java. Курс «Программирование на Java»

В Java оператор ветвления if-else имеет Си-подобный синтаксис: условное выражение заключается в круглые скобки, тело ветки – в фигурные.

if (логич_выражение) {
    выражение1;
    выражение2;
    …
}
else {
    выражениеN;
    …
}

Если тело состоит из одного выражения, фигурные скобки можно не использовать.

if (логич_выражение)
    выражение1;
else
    выражение2;

В случае множественного ветвления обычно используют вложение последующих веток if во внешние для них else с поднятием этого if к строке else.

if (…) {
    …
} 
else if (…) {
    …
} 
else if (…) {
    …
} 
else {
    … 
}

Простыми логическими операторы стандартны: ==, !=, <, <=, >, >=.

Логические операторы И, ИЛИ, логическое НЕ записываются соответственно &&, ||, !. В Java эти операторы применимы только к булевому типу данных, то есть нельзя писать, например, !var или a < 3 || var, если var – целое или любой другой отличный от boolean тип. То же самое касается циклов: while (true) {} будет работать, while (1) {} – нет.

При сравнении примитивных типов сравниваются их значения. Так в следующем коде ветка if выполнится:

int a = 3;
int b = 3;
 
if (a == b) {
    System.out.println(1);
}

В случае ссылочных типов сравниваются ссылки. Чтобы быть равными, они должны указывать на один и тот же объект.

package info.younglinux.java;
 
public class Logic {
    public static void main(String[] args) {
        Message a = new Message("Hello");
        Message b = new Message("Hello");
        Message c = b;
        if (a == b) {
            System.out.println("a == b");
        }
        if (b == c) {
            System.out.println("b == c");
        }
    }
}
 
class Message {
    private String m = "";
    Message(String str) {
        this.m = str;
    }
    String getMessage() {
        return this.m;
    }
}

В приведенной программе на экран будет выведено только b == c, так как обе переменные указывают на один и тот же объект. В то время как a и b – разные объекты.

В Java есть сокращенный вариант условного оператора для случая, когда есть две ветки – if и else, каждая включает только одно выражение, а результат выражений обоих веток может быть присвоен переменной одного типа. Такой оператор называется тернарным (ternary – тройной).

import java.util.Scanner;
public class Ternary {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int a = scan.nextInt();
 
        int b = a > 10 ? a : a + 10;
 
        System.out.println(b);
    }
}

В выражении int b = a > 10 ? a : a + 10; проверяется условие, стоящее до знака вопроса. Если оно истинно, то переменной b присваивается результат выражения, находящегося между знаками вопроса и двоеточия. Если условие ложно, то присваивается результат выражения, находящегося после двоеточия.

Условный оператор Boolean в Java

Логический оператор boolean имеет одно из двух значений: true или false (истина или ложь), да или нет, 1 или 0. В этом уроке мы рассмотрим на практике этот оператор, а также протестируем на отрицание нашу переменную.

В Java этот тип переменной для логических значений записывается так:

boolean user = true;

Таким образом, вместо того, чтобы вводить int или double или string, вы просто вводите логическое значение (первая строчная буква «b»). После имени вашей переменной вы можете присвоить значение true или false.

Обратите внимание, что оператор присваивания представляет собой один знак равенства (=). Если вы хотите проверить, имеет ли переменная значение, вам нужно использовать два знака равенства (==).

Запустите этот простой код:

boolean user = true;
        
if(user == true) {
     System.out.println("Это истина");
}
else {
     System.out.println("Это ложь");
}

Таким образом, первый оператор if проверяет, имеет ли переменная user значение true. Часть else проверяет, является ли она ложной. Вам не нужно говорить «else if (user == false)».

В итоге, если что-то не так, то это ложь. Так что вы можете просто использовать что-то другое – в Java существует только два варианта логических значений boolean.

Кроме это для boolean в Java подходит следующий оператор сравнения — это ! (означает «не»).

Посмотрите на следующий код:

boolean user = true;
        
if(!user) {
     System.out.println("Это ложь");
}
else {
     System.out.println("Это истина");
}

Этот код почти такой же, как и предыдущий, за исключением этой строки:

if(!user) {

На этот раз у нас есть оператор НЕ перед переменной user. Оператор НЕ — это один восклицательный знак (!), идущий

перед переменной, которую вы хотите проверить.

Это тестирование на отрицание, которое означает, что Java-программа тестирует противоположность того, что на самом деле является значением.

Поскольку переменная user установлена ​​в true, тогда !user будет проверять наличие ложных значений. Если для user установлено значение false, то !user будет проверять истинные значения. Подумайте об этом так: если что-то НЕ верно, то что это? Или если это не ложь, то что?

Урок о Boolean в Java короткий, так как достаточно простой. В следующей части мы рассмотрим операторы Java Switch.

Арифметические операторы java

Подробности
Подробности
Категория: Java
Просмотров: 11585

 

 

Оператор

Результат

Оператор

Результат

+

Сложение

+ =

сложение с присваиванием

вычитание (также унарный минус)

-=

вычитание с присваиванием

*

Умножение

* =

умножение с присваиванием

/

Деление

/=

деление с присваиванием

%

деление по модулю

%=

деление по модулю с присваиванием

++

Инкремент

декремент

Сложение с присваиванием

(+=) — сложение левого операнда с правым. Пример:

x += a, равносильно x = x + a.

Вычитание с присваиванием (-=) — вычитает правый операнд из левого. Пример:

x -=a, равносильно x = x — a.

Деление по модулю (%) — остаток от деления. Пример:

8%3=2, т.е. 8/3 равно 2, с остатком 2

 Инкремент (++) — увеличение значения на 1. Пример:

x=10;

x++;

print x;

результат 11 

 Декремент (—) — уменьшение значения на 1. Пример:

x=10;

x—;

print x;

результат 9 

  • < Назад
  • Вперёд >
Добавить комментарий

java for while

For example: The Java Do-While loop is almost the same in While Loop. Java do-while loop is just the extended version of the while loop which is discussed above. In our previous post, we learned what are the conditional statements and how to use If, Else If and Else statements. The while statement will then test the condition. In this tutorial, you will learn what are the looping statements in Java such as the For loop, While loop and Do-While loop, and how they alter the behavior of your program. For example if we are asked to take a dynamic collection and asked to iterate through every element, for loops would be impossible to use because we do not know the size of … The Java while loop is to iterate a code block for a given number of times till the condition inside a loop is False. The Code Execution statements block is mostly coded to increase or decrease the variable that was initialized in the Initialization block. Here in step 4, we set, After incrementing our variable, it will continue the loop and go again to step 2. The program will continue this process until the expression evaluates to false, after which point the whileloop is halte… See Java Language Changes for a summary of updated language features in Java … These are used if you are executing the same line of codes repeatedly.

You also have the option to opt-out of these cookies. Answer all questions in Part I (compulsory) and seven questions from Part-II, choosing three questions… Write CSS OR LESS and hit save. The while loop loops through a block of code as long as a specified condition is true: Syntax while (condition) { // code block to be executed} In the example below, the code in the loop will run, over and over again, as long as a variable (i) is less than 5: These are the initialization statement, the condition statement, and a code block that will be called for each end of loop. It can also call a method. When you know exactly how many times you want to loop through a block of code, use the for loop instead of a while loop: Syntax for ( statement 1 ; statement 2 ; statement 3 … Java For and While Loops. It is easier to use than simple for loop because we don’t need to increment value and use subscript notation. The loop will get executed while the contiion ia true ,when the condition is false the loop will terminate. Examples and practices described in this page don’t take advantage of improvements introduced in later releases and might use technology no longer available. Notify me of follow-up comments by email. Initialisation takes place before the loop starts. The common construction of a java for loop is this: A Java For loop contains three parts inside the parenthesis. For loop:- The syntax of the for loop is given below for(initialization; condition ; iteration) { Java commands } Here initialization is to initialize a counter variable.it can be any numeric or character data type depending on the requirement of the program. Learn each section of the programming using the while loop with useful examples and the results given in the output. While loop; Infinitive while loop; Apart from the above-mentioned sub-topics, we will also discuss a brief comparison between Java for-loop and while loop through the programs so that you can accomplish the same task using two different, yet common iteration statements. While(condition) {Java statements} This is a loop that checks the condition before executing the statements. (물론 도와주는 변수를 for문 밖에 선언해줄경우 for문이어도 도와주는 변수가 for문 실행후 사라지지 않는다) int i=0; for ( ;i=0 while always returns a true value and will execute infinitely. while文は Java で繰り返しをするための構文の一つです。 何かの条件を満たしている間、ずっと処理を繰り返し続けるものです。 while文は for 文よりシンプルな構文ですので、コツが分かれば … Do while loop:- The next loop is do while loop. The do-while loop is similar to while loop, however, there is a difference between them: In a while loop, a condition is evaluated before the execution of loop’s body but in a do-while loop, a condition is evaluated after the execution of loop’s body. When condition returns false, the control comes out of loop and jumps to the next statement after while … While(condition) Java Array is a collection of elements stored in a sequence. Java Loops WHILE FOR DO WHILE Interview MCQ Questions and Answers Study and learn Interview MCQ Questions and Answers on Java Loops namely FOR, WHILE, DO WHILE and Break & Continue Label Statements. Consider the example below: Remember that in Java While Loop, the condition will be tested first while in Java Do-While Loop, the statements or codes inside the bracket will be executed first before testing the condition. As same, all loop in a Programming language has worked on the same scenario – “Repeat a specific block of code until a certain condition is false” Java statements 2. These cookies will be stored in your browser only with your consent. Java Loop With loops, you get to … A counter will be initialized to a value and then we can decide what should be rhe last value of the counter. While loop can be used in a condition where the number of executions are not fixed. We do not need an index to do this. Since the current value of. while (expression) { statement (s) } The while statement evaluates expression, which must return a boolean value. The new license permits certain uses, such as personal use and development use, at no cost — but other uses authorized under prior Oracle Java … Here’s an example of a Java For Loop. By mkyong | Last updated: November 26, 2018. It looks a lot like an if statement. Then the while loop stops too. Initialisation takes place before the loop starts. It must repeat until the user enters 0 (using «do-while»). To access elements of an array using while loop, use index and traverse the loop from start to end or end to start by incrementing or decrementing the index respectively. Returning TRUE means that it will execute the code inside the block again while returning FALSE will exit the loop. In Java, no foreach keyword is used. A counter is required in a loop to count the number of execution taken place. The Condition statement block should return a boolean which determines if it will continue to loop inside the loop block or exit the loop. » Uninstall About Java do{} while(conditions) Sample Program The Java While Loop is almost the same in For loop but with just a condition statement inside the parenthesis. Java While loop start by verifying the condition, if it is true, the code within the while loop will run. » Need Help? The second basic type of loop in Java that I will discuss is the «while loop». Java/Операторы цикла for, while, do … что число 10 выведено не будет, так как while это оператор предусловия. While loop executes the code inside the bracket if the condition statement returns to true, but in the Do-While loop, the code inside the do statement will always be called. If the expression evaluates to true, the while statement executes the statement (s) in the while block. In while loop, condition is evaluated first and if it returns true then the statements inside while loop execute. The while statement continues testing the expression and executing its block until the expression evaluates to false. Instead we use the for-keyword to iterate over each element in a collection. If it returns, Whatever codes that are inside the loop will be executed if the condition is true. Here, I will tell you about the ‘while’ loop in Java. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. While loop executes the code inside the bracket if the condition statement returns to true, but in the Do-While loop, the code inside the do statement will always be called. The for-each loop is used to traverse array or collection in java. We added the numbers colored in Red to show you the execution order. The while loop loops through a block of code as long as a specified condition evaluates to true. This website uses cookies to improve your experience while you navigate through the website. while is another looping statement in java which allows programmers to repeat the execution of one or more line of code as far as a condition is true.The computer keep repeating the execution of statements inside the while loop until the condition get’s false.Programmer can also read this as » execute given statements while something is true «. Looping statements are also common in programming. P.S. You have entered an incorrect email address! A Java While Loop statement construction is this: The loop will always execute the codes inside the bracket if the condition always returns to true. Java Array – While Loop. In our example, the loop will end if our variable, First, the loop will always test the condition. First, it will initialize a variable. Java While loop is executed the same statement (block of code) until a given condition with while expression, is true. Java Download » What is Java? If the Boolean expression evaluates to true, the body of the loop will execute, then the expression is evaluated again. for문은 도와주는 변수가 선언 후 for문이 끝나면 도와주는 변수가 사라지는 반면에 while문은 while문 위에 도와주는 변수를 선언하기 때문에, while문이 끝나도 도와주는 변수가 사라지지 않는다. Java While Loop. Viewed: 92,965 | +56 pv/w. In Java, a while loop is used to execute statement(s) until a condition is true. Loops are basically used to execute a set of statements repeatedly until a particular condition is satisfied. The Initialization statements block is where you can put the initialization of variables which then you can use inside the loop block. In this quick article, we will discuss how to use a do-while loop with examples. If it returns. Java+You, Download Today!. watch basic java videos herewww.youtube.com/user/trushntej Java Do While Loop. Node This article is using the endTime — startTime. In do…while loop first the java statements are executed without checking the condition , after first execution the condition is checked , now if the condition is true the loop will get executed again, the loop will terminate once the condition becomes false. In this tutorial, we learn to use it with examples. If the condition(s) holds, then the body of the loop is executed after the execution of … It is alao called and exit controlled loop. Important Oracle Java License Update The Oracle Java License has changed for releases starting April 16, 2019. Other names may be trademarks of their respective owners. The new Oracle Technology Network License Agreement for Oracle Java SE is substantially different from prior Oracle Java licenses. Simple Java While Loop Examples In our example. Written by Nick Parlante. A while loop is actually just a conditional that repeats itself as long as the condition stays true. Attend job interviews easily with these Multiple Choice Questions. Here take a look: A while loop looks just like an if statement; just replace the «if» keyword with the keyword «while». Here, statement(s) may be a single statement or a block of statements. The topics included in this article are mentioned below: The Java Do-While Loop The Java Do-While loop is almost the same in While Loop. This website uses cookies to improve your experience. If the end index is unknown, consider a while … The loop keeps executing untill the condition becomes false. The loop keeps executing untill the condition becomes false. CTRL + SPACE for auto-complete. Next in our tutorial is how to terminate a loop. A for-loop is best when the starting and ending numbers are known. Java While Loop. Consider the example below: You can iterate over the elements of an array in Java using any of the looping statements. The loop will continue until the condition returns false. While loop in Java. The syntax of the while loop is as following. While loops are very important as we cannot know the extent of a loop everytime we define one. While loop:- It is called an entry controlled loop. It will skip step 1 since it can only be called once. { The loop do..while repeats while both checks are truthy: The check for num

Asiatische Rezepte Mit Huhn Und Kokosmilch, Hautklinik Regensburg Dermatologie, El Greco Steppach Speisekarte, Zügig Am Bauch Abnehmen, ärzte Diako Flensburg,

Java-операторов


Операторы Java

Операторы используются для выполнения операций с переменными и значениями.

В приведенном ниже примере мы используем + оператор для сложения двух значений:

Хотя оператор + часто используется для сложения двух значений, как в примере выше, его также можно использовать для сложения переменной и значения или переменной и другой переменной:

Пример

  int sum1 = 100 + 50; // 150 (100 + 50)
int sum2 = сумма1 + 250; // 400 (150 + 250)
int sum3 = сумма2 + сумма2; // 800 (400 + 400)
  

Попробуй сам »

Java делит операторов на следующие группы:

  • Арифметические операторы
  • Операторы присваивания
  • Операторы сравнения
  • Логические операторы
  • Побитовые операторы

Арифметические операторы

Арифметические операторы используются для выполнения общих математических операций.

Оператор Имя Описание Пример Попробуй
+ Дополнение Складывает два значения х + у Попробуй »
Вычитание Вычитает одно значение из другого х — у Попробуй »
* Умножение Умножает два значения х * у Попробуй »
/ Дивизион Делит одно значение на другое х / у Попробуй »
% Модуль упругости Возвращает остаток от деления х% у Попробуй »
++ Прирост Увеличивает значение переменной на 1 ++ x Попробуй »
Декремент Уменьшает значение переменной на 1 — х Попробуй »


Операторы присваивания Java

Операторы присваивания используются для присвоения значений переменным.

В приведенном ниже примере мы используем оператор присваивания ( = ) присвоить значение 10 переменной с именем x :

Оператор присваивания сложения ( + = ) добавляет значение переменной:

Список всех операторов присваивания:


Операторы сравнения Java

Операторы сравнения используются для сравнения двух значений:


Логические операторы Java

Логические операторы используются для определения логики между переменными или значения:

Оператор Имя Описание Пример Попробуй
&& логический и Возвращает истину, если оба утверждения верны x <5 && x <10 Попробуй »
|| логический или Возвращает истину, если одно из утверждений истинно x <5 || х <4 Попробуй »
! Логическое не Обратный результат, возвращает false, если результат истинный! (X <5 && x <10) Попробуй »



Операторы (Руководства по Java ™> Изучение языка Java> Основы языка)

Учебники по Java были написаны для JDK 8. Примеры и методы, описанные на этой странице, не используют улучшений, представленных в более поздних версиях, и могут использовать технологии, которые больше не доступны.
Обзор обновленных языковых функций в Java SE 9 и последующих выпусках см. В разделе «Изменения языка Java».
См. Примечания к выпуску JDK для получения информации о новых функциях, улучшениях, а также удаленных или устаревших параметрах для всех выпусков JDK.

Теперь, когда вы узнали, как объявлять и инициализировать переменные, вы, вероятно, захотите узнать, как сделать с ними что-то .Хорошее начало — изучение операторов языка программирования Java. Операторы — это специальные символы, которые выполняют определенные операции с одним, двумя или тремя операндами , а затем возвращают результат.

По мере того, как мы исследуем операторы языка программирования Java, вам может быть полезно заранее знать, какие операторы имеют наивысший приоритет. Операторы в следующей таблице перечислены в порядке приоритета. Чем ближе к верхнему краю таблицы находится оператор, тем выше его приоритет.Операторы с более высоким приоритетом оцениваются перед операторами с относительно более низким приоритетом. Операторы в одной строке имеют одинаковый приоритет. Когда в одном и том же выражении появляются операторы с равным приоритетом, должно определяться правило, которое вычисляется первым. Все бинарные операторы, кроме операторов присваивания, оцениваются слева направо; операторы присваивания оцениваются справа налево.

Приоритет оператора
Операторы Приоритет
постфикс выражение ++ выражение -
одинарный ++ выражение - выражение + выражение - выражение ~!
мультипликативный * /%
добавка + -
смена << >> >>>
реляционный <> <=> = instanceof
равенство ==! =
побитовое И и
побитовое исключающее ИЛИ ^
побитовое включительно ИЛИ |
логическое И &&
логическое ИЛИ ||
тройной ? :
назначение = + = - = * = / =% = & = ^ = | = << = >> = >>> =

В программировании общего назначения одни операторы появляются чаще, чем другие; например, оператор присваивания « = » встречается гораздо чаще, чем беззнаковый оператор сдвига вправо « >>> ». Имея это в виду, нижеследующее обсуждение в первую очередь фокусируется на операторах, которые вы, скорее всего, будете использовать на регулярной основе, и заканчивается акцентом на менее распространенных. Каждое обсуждение сопровождается примером кода, который вы можете скомпилировать и запустить. Изучение его результатов поможет закрепить то, что вы только что узнали.

Написание оператора Kubernetes на Java: часть 1

Часть 1: Что такое оператор Kubernetes?

Недавно мы опубликовали первую альфа-версию нашего оператора агента Instana, созданную с использованием Quarkus и грядущего клиентского расширения Quarkus Kubernetes.В этой серии блогов мы хотели бы поделиться своим опытом и показать, как эти технологии могут использоваться для реализации оператора Kubernetes в Java.

Серия состоит из трех частей:

Это часть 1, знакомство с операторами Kubernetes.

Что такое контроллер Kubernetes?

Прежде чем переходить к операторам, мы должны взглянуть на контроллеры Kubernetes. Контроллеры — один из основных строительных блоков Kubernetes. Есть несколько десятков встроенных контроллеров, все из которых работают на мастере Kubernetes в поде с именем kube-controller-manager в пространстве имен kube-system .

Одним из таких встроенных контроллеров является контроллер набора реплик . Его работа — заботиться о наборах реплик. Ниже приведен типичный пример ресурса набора реплик:

  apiVersion: apps / v1
вид: ReplicaSet
метаданные:
  имя: куард
спецификации:
  реплик: 3
  селектор:
    matchLabels:
      имя: куард
  шаблон:
    метаданные:
      ярлыки:
        имя: куард
    спецификации:
      контейнеры:
      - имя: куард
        изображение: gcr.io/kuar-demo/kuard-amd64:1
  

Если это кажется вам незнакомым, то потому, что вы обычно не создаете наборы реплик явно.Вы создаете Deployment , а встроенный контроллер развертывания создает для вас ReplicaSet . Развертывания делают больше, чем просто создают наборы реплик. Например, развертывания реализуют скользящие обновления. Наборы реплик имеют единственную цель: они определяют количество из реплик , то есть желаемое количество работающих подов.

Контроллер набора реплик следит за тем, чтобы количество модулей соответствовало количеству реплик , определенных в наборе реплик.Если Pod удален, контроллер набора реплик запускает новый. Если набор реплик изменен, контроллер набора реплик добавляет или удаляет поды, чтобы вернуться к желаемому количеству реплик.

Что такое оператор?

В приведенном выше примере контроллера набора реплик показаны наиболее важные функции, реализованные контроллерами:

  • Наблюдаем за первичным ресурсом , которым в этом примере является ReplicaSet .
  • Наблюдаем за вторичным ресурсом , которым в этом примере является блок Pod .
  • Взаимодействие с сервером API : всякий раз, когда создается или обновляется ReplicaSet , или всякий раз, когда создается или удаляется модуль Pod , контроллер набора реплик связывается с сервером API и создает или удаляет модули до тех пор, пока желаемое состояние не будет восстановлено .

Эти концепции реализованы в Kubernetes универсальным и расширяемым образом. Вы можете создавать свои собственные пользовательские ресурсы и писать свои собственные пользовательские контроллеры, отслеживающие эти ресурсы и взаимодействующие с сервером API.

Оператор — это настраиваемый контроллер с акцентом на , работающий с конкретным приложением .

Хорошим примером такого приложения является распределенное хранилище ключей / значений. Kubernetes предоставляет развертывания (или наборы реплик) для увеличения количества подов. Однако для конкретного хранилища ключей / значений могут потребоваться дополнительные шаги при добавлении модулей, например повторная балансировка данных. Чтобы реализовать это, вы можете создать свой собственный ресурс (аналогичный ReplicaSet , но с конфигурацией для конкретного приложения), и вы можете реализовать свой собственный контроллер (например, контроллер набора реплик, но позаботившись о повторной балансировке, когда Pods добавляются или удаляются).Этот настраиваемый контроллер будет оператором для хранилища ключей / значений.

Инструменты разработки для создания операторов

С точки зрения высокого уровня, операторы — это приложения, взаимодействующие с сервером Kubernetes API через HTTPS. Они могут быть написаны на любом языке программирования и могут быть развернуты внутри кластера или вне кластера. Однако наиболее распространено и удобнее объединить их в образ Docker и запустить в кластере.

Поскольку операторы реализуют функциональность, аналогичную встроенным контроллерам, естественным выбором является повторное использование тех же библиотек, которые Kubernetes использует для внутренних целей. Это источник SDK оператора CoreOS. Он предоставляет инструменты для генерации необходимого шаблонного кода и использует внутренние библиотеки Kubernetes в качестве зависимостей. Поскольку Kubernetes написан на Go, операторы также написаны на Go.

Для разработчиков Java Quarkus и предстоящее клиентское расширение Kubernetes представляют собой многообещающую альтернативу экосистеме Go. Приложения Java, созданные с помощью Quarkus, можно скомпилировать в собственные исполняемые файлы, аналогичные двоичным файлам Go. Это позволяет создавать небольшие образы Docker с быстрым запуском.Более того, предстоящее расширение клиента Kubernetes реализует большую часть функций, необходимых для отслеживания ресурсов и взаимодействия с сервером API.

В следующем посте в блоге этой серии будет показано, как настроить проект Quarkus с клиентским расширением Kubernetes. В части 3 будет показано, как реализовать типичные функции контроллера, такие как отслеживание обновлений пользовательских ресурсов.

Сборка мусора

В качестве примечания, я хотел бы представить ссылки владельцев и сборку мусора .Во многих случаях встроенной сборки мусора Kubernetes достаточно для очистки ресурсов, созданных операторами, поэтому операторы не нуждаются в явной очистке.

В Kubernetes каждый ресурс может быть аннотирован ссылкой на владельца. Например, когда контроллер набора реплик создает Pod , он устанавливает ReplicaSet в качестве ссылки владельца для этого Pod :

  собственник
  - apiVersion: apps / v1
    blockOwnerDeletion: true
    контроллер: правда
    вид: ReplicaSet
    имя: куард
    uid: aa8ecdff-9989-11e9-9cc6-0242806076bd
  

Когда набор реплик удален, контроллеру не нужно ничего делать.Kubernetes неявно удалит все ресурсы, для которых реплика установлена ​​в качестве ссылки владельца, таким образом завершая работу Pod’ов, связанных с этим набором реплик.

Операторы должны адаптировать этот механизм и использовать настраиваемый ресурс в качестве ссылки владельца для всех сгенерированных ресурсов. Таким образом, всякий раз, когда пользователь удаляет настраиваемый ресурс, Kubernetes позаботится об удалении всех связанных ресурсов. Это работает, даже если оператор больше не работает.

Сводка

В этом блоге представлены операторы.Оператор — это настраиваемый контроллер с акцентом на , работающий с конкретным приложением .

В следующем посте показано, как настроить проект Quarkus с помощью расширения Kubernetes Client. В части 3 мы покажем, как реализовать специфические для оператора функциональные возможности, такие как просмотр пользовательских ресурсов.

операторов Java с приоритетом и ассоциативностью

Операторы Java с приоритетом и ассоциативностью

Этот файл содержит таблицу всех Java операторы вместе с их приоритетом и их ассоциативность.Таблица расположены от самого высокого до самого низкого приоритета по мере продвижения сверху вниз. Столбец P содержит приоритет, а столбец A показывает ассоциативность (слева ( L ) или право ( R )) оператора. Операторы между пунктирными линиями имеют одинаковые «уровень приоритета». Содержание таблица была взята из 4-го издания «Java в двух словах» Дэвида Фланагана, опубликованная пользователя O’Reilly.

P A Оператор Тип (ы) оператора Операция выполнена
-------------------------------------------------- --------------------
15 л.объект, член объект член доступ
       [] массив, доступ к элементу массива int
       (args) метод, вызов метода arglist
       ++, - постинкремент переменной, декремент
-------------------------------------------------- --------------------
14 R ++, - предварительное приращение переменной, декремент
       +, - число унарный плюс, унарный минус
       ~ целочисленное побитовое дополнение
       ! логическое логическое НЕ
-------------------------------------------------- --------------------
13 R новый класс, создание объекта arglist
       (тип) тип, любое приведение (преобразование типа)
-------------------------------------------------- --------------------
12 L *, /,% число, умножение числа, деление, остаток
-------------------------------------------------- --------------------
11 L +, - число, сложение чисел, вычитание
       + строка, любая конкатенация строк
-------------------------------------------------- --------------------
10 L> целое, целочисленный сдвиг вправо с расширением знака
       >>> целочисленный, целочисленный сдвиг вправо с нулевым расширением
-------------------------------------------------- --------------------
 9 L,> = число, число больше, больше или равно
       ссылка instanceof, сравнение типа типа
-------------------------------------------------- --------------------
 8 L == примитив, примитив равен (имеют одинаковые значения)
       ! = примитив, примитив не равен (имеют разные значения)
       == ссылка, ссылка равна (относится к тому же объекту)
       ! = ссылка, ссылка не равна (относится к разным объектам)
-------------------------------------------------- --------------------
 7 L & целое, целое побитовое И
       & логическое, логическое логическое И
-------------------------------------------------- --------------------
 6 L ^ целое, целое побитовое исключающее ИЛИ
       ^ логическое, логическое логическое XOR
-------------------------------------------------- --------------------
 5 л | целое, целое побитовое ИЛИ
       | логическое, логическое логическое ИЛИ
-------------------------------------------------- --------------------
 4 L && логическое, логическое условное И
-------------------------------------------------- --------------------
 3 л || логическое, логическое условное ИЛИ
-------------------------------------------------- --------------------
 2 R?: Логический, любой, любой условный (тернарный) оператор
-------------------------------------------------- --------------------
 1 R = переменная, любое присвоение
       * =, / =,% = переменная, любое присвоение с операцией
       + =, - =
       > =,
       >>> =,
       & =, ^ =, | =
-------------------------------------------------- --------------------
 

Приоритет операторов — это то, что мы иногда принимаем как должное, особенно если мы хорошо знакомы с стандартные правила приоритета для общих арифметических операторов. Но слишком покладистые могут подвергнуть нас некоторой опасности, особенно в языки, такие как Java и C ++, которые имеют такое множество операторов, стоит быть начеку.

Список всех тем

Почему в Java / C ++ нет оператора мощности?

На этот вопрос отвечает C ++: Страуструп, «Дизайн и эволюция C ++» обсуждает этот вопрос в разделе 11.6.1, стр. 247-250.

Были общие возражения против добавления нового оператора. Это добавило бы к и без того запутанной таблице приоритетов., который явно никому не нравился.

Страуструп снова рассмотрел ** , но это уже имеет значение в C: a ** p равно a раз, независимо от того, на что указывает p , и char ** c; объявляет c как указатель на указатель на char . Введение ** в качестве токена, означающего «объявление указателя на указатель на», «умножение на то, на что указывает следующее» (если это указатель) или «возведение в степень» (если за ним следует число), вызвало проблемы с приоритетом. a / b ** p пришлось бы разобрать как a / (b ** p) , если бы p было числом, но (a / b) * * p , если бы p было указателем, поэтому это будет иметь разрешить в парсере.

Другими словами, это было бы возможно, но это усложнило бы таблицу приоритетов и синтаксический анализатор, а оба они уже слишком сложны.

Я не знаю истории о Java; все, что я мог сделать, это спекулировать. Что касается C, с которого он начался, все операторы C легко переводятся в код сборки, частично для упрощения компилятора и частично для того, чтобы не скрывать трудоемкие функции в простых операторах (тот факт, что operator + () и другие могут скрыть большую сложность и снижение производительности было одной из первых жалоб на C ++).

Тернарный оператор Java — Linux Hint

Тернарный оператор может использоваться как альтернатива операторам if-else и if-else-if. Он называется тернарным оператором, потому что для выполнения любой задачи требуется три операнда. Если условное выражение, используемое в тернарном операторе, возвращает истину, то оно выполняет конкретный оператор; в противном случае он выполняет другой оператор. Символы ‘?’ и ‘:’ используются для определения троичного оператора. Тернарный оператор лучше использовать для решения очень простой задачи вместо оператора if.В этом руководстве показаны различные варианты использования тернарного оператора в java.

Синтаксис:

Здесь, если условный оператор возвращает истину, он выполняет оператор, определенный в левой части «:», а если он возвращает ложь, то он выполняет оператор, определенный в правой части «:».

Пример-1: Использование тернарного оператора с одним условием

В следующем примере показано очень простое использование тернарного оператора, который можно использовать для замены оператора if-else.В качестве входных данных будет приниматься целочисленное значение, а тернарный оператор используется для проверки того, что значение больше или равно 80 или нет. Если тернарное условие вернет истину, то оно вернет оценку; в противном случае он вычислит, сколько отметок необходимо, чтобы получить 80 и вернуться к переменной сообщения , которая печатается позже.

// Импортировать пакет сканера
import java.util.Scanner;

public class ternary1 {

public static void main (String [] args) {

// Создание объекта сканера
Scanner in = new Scanner (System.в);
System.out.print («Введите свои оценки:»);

// Снимаем оценки у пользователя
int mark = in.nextInt ();

// Сохраняем строковое значение на основе входного значения
String message = (mark> = 80)? «Ваша оценка A +»: «Вам нужно» + (80 баллов) +
«, чтобы получить A +»;

System.out.println (сообщение);

// Закройте объект сканера
дюймов.близко();
}
}

Выход:

После запуска кода 85 принимается как входное значение, превышающее 80. Итак, здесь печатается значение оценки.

Если в качестве входных данных берется 75, то тернарное условие возвращает false и вычисляет, сколько оценок требуется для получения A + и печати.

Пример-2: Использование тернарного оператора с несколькими условиями

В следующем примере показано использование тернарного оператора с двумя условиями, и если оба условия возвращают истину, он вернет конкретный текст; в противном случае он вернет другой текст в переменную val , который будет напечатан позже.

public class ternary2 {

public static void main (String [] args) {
// Назначить строковое значение
String name = «Abrar Fahad»;

// Присваиваем числовое значение
int id = 22;

/ * Сохранить строковое значение на основе
* возвращаемое значение условия
* /
String val = (name.equals («Abrar Fahad») && id == 22)?
«Вы выбраны»: «Вы не выбраны»;

// Распечатайте переменную
System.out.println (val);
}
}

Выход:

Согласно коду, тернарное условие вернет истину, и после выполнения кода появится следующий вывод.

Пример-3: Использование тернарного оператора для поиска максимального значения

Нахождение максимального значения между двумя числами с помощью тернарного оператора показано в следующем примере. Два целых значения будут взяты от пользователей и сравнены в тернарном условии, чтобы найти максимальное значение.Далее будет напечатано максимальное значение с форматированным текстом.

// Импортировать пакет сканера
import java.util.Scanner;
public class ternary3 {

public static void main (String [] args) {
// Создание объекта сканера
Scanner in = new Scanner (System.in);

System.out.print («Введите число:»);
// Возьмите первое число
int num1 = in.nextInt ();

System.out.print («Введите число:»);
// Возьмите второе число
int num2 = in.nextInt ();

// Сохраняем максимальное значение
int max_val = (num1> num2)? число1: число2;

// Вывести максимальное значение
System. out.println («Максимальное число:» + max_val);

// Закройте объект сканера
in.close ();
}
}

Выход:

23 и 79 принимаются в качестве входных данных после выполнения кода, и печатается максимальное значение.

Пример-4: Использование вложенного тернарного оператора

Вложенный тернарный оператор может использоваться как альтернатива «if-else-if» statement. Использование вложенного тернарного оператора показано в следующем примере. Здесь целочисленное значение будет принято как входное и сохранено в переменной mark . Значение отметок будет проверяться в первом тернарном условии, и если оно вернет false, то будет проверяться во втором тернарном условии и так далее.Если все тернарные условия возвращают false, тогда он вернет последний текст тернарного оператора. Переменная grade используется для хранения возвращаемого значения троичного выражения, которое позже будет напечатано в качестве вывода.

// Импортировать пакет сканера
import java.util.Scanner;

public class ternary4 {

public static void main (String [] args) {

// Создаем объект сканера
Scanner in = new Scanner (System.in);
Система.out.print («Введите свои оценки:»);

// Снимаем отметки у пользователя
int mark = in.nextInt ();

// Сохраняем строковое значение на основе входного значения
String grade = (mark> = 90)? «Ваша оценка A +»:
(баллы> = 80)? «Ваша оценка B +»:
(баллы> = 70)? «Ваша оценка C +»:
(баллы> = 75)? «Ваша оценка D»: «Вы проиграли»;

Система.out.println (оценка);

// Закройте объект сканера
in.close ();
}
}

Выход:

76 принимается в качестве входных данных после выполнения кода, и третье условие тернарного оператора стало истинным на основе входного значения, и соответствующий текст будет напечатан.

Далее 60 принимается как вход, и все тернарные условия возвращают ложь. Итак, печатается последний текст тернарного выражения.

Вывод:

Использование тернарного оператора вместо «if-else» и «if-else-if» во многих случаях делает код коротким и эффективным. Так что лучше использовать его для решения простых задач. В этом руководстве на простых примерах объясняются различные варианты использования тернарного выражения. Я надеюсь, что концепция тернарного оператора и то, как его можно использовать в Java-коде, будут поняты после прочтения этого руководства.

Java Operators — Руководство для начинающих с примерами

операторов Java, различных типов операторов и порядок операций.Следующий пост в основном будет касаться новичков , которые плохо знакомы с Java и хотят изучить основы. Если у вас есть сомнения относительно операторов Java, оставьте комментарий в конце сообщения или свяжитесь с нами. Наши эксперты по Java могут вам помочь.

Что такое операторы Java?

Операторы Java: в любом языке программирования (и в математике ) мы используем некоторые символы для представления операции (вычисление) .

Предположим, если мы хотим выполнить сложение, , тогда мы используем символ »+« . Аналогично, когда мы хотим выполнить вычитание, мы используем символ »-« Эти символы известны как математические операторы.У нас есть разные типы операторов в java. В каждом типе (группе) есть символы (операторы).

Подробнее:

Различные типы операторов Java с примерами

В зависимости от типа вычислений с операторами Java они делятся на следующие типы:

  • Арифметические операторы
  • Операторы отношения
  • Логические операторы
  • Условные операторы
  • Операторы присваивания
  • Операторы группировки
  • Операторы увеличения / уменьшения
  • Побитовые операторы
  • и т. Д.

Пошаговое руководство и полное объяснение различных типов операторов Java с подробным анализом

1) Арифметические операторы

[wp_ad_camp_3]

  • +
  • *
  • /
  • %

Сложение, вычитание, умножение и деление — это основные математические операции.Операторы java связаны с этими основными операциями.

Мы знаем, что »+« используется для сложения, — используется для вычитания, а * используется для умножения. Эти три операции приведут к одному значению.

Например, сложение 13 и 9 приведет к 21, что является одиночным значением . Точно так же вычитание 9 из 13 приведет к 4, что является единственным значением.

Тот же тип единственного значения 52 получится, когда мы умножим эти два значения.

Но деление — это правильный расчет , в результате которого мы получаем два значения (частное и остаток) . Предположим, что если мы разделим 13 на 4, то 3 будет частным, а 1 — остатком.

Аналогично, когда мы делим 47 на 6, тогда 7 — это частное, а 5 — остаток. В программировании мы используем остаток (после деления) во многих местах. Таким образом, есть два символа (операторы Java) для получения результата после деления. Символ »/« »используется для получения частного, а символ« »%« используется для получения остатка.

Эти операторы Java могут применяться к любым данным числового типа, а также к данным типа char . Но эти операторы Java не могут быть реализованы для данных логического типа.

Пример №1: Арифметика

1

2

3

4

5

6

7

8

9

10

11

12

13

14

14

18

19

20

21

22

23

24

25

26

27

class ArthimeticBasics1

{

public static void main (String args [])

{

int a = 1 + 1;

int b = a * 2;

int c = b / 2;

интервал d = c-1;

int e = -d;

Система. out.println (а); // 2

System.out.println (b); // 4

System.out.println (c); // 2

System.out.println (d); // 1

System.out.println (e); // — 1

}

}

Пример № 2: Арифметические операторы в Java

1

2

3

4

5

6

7

8

9

10

11

12

13

14

14

18

19

20

21

22

23

24

25

26

27

class ArthimeticBasics

{

public static void main (String args [])

{

double a = 1 + 1;

двойное b = a * 2;

двойной c = b / 2;

двойной d = c-1;

двойной e = -d;

Система.out.println (а); //2. 0

System.out.println (b); //4.0

System.out.println (c); //2.0

System.out.println (d); //1.0

System.out.println (e); //-1.0

}

}

Пример № 3: Арифметические операторы в Java

class ArthimeticBasics

{

public static void main (String args [])

{

int a = 53;

двойной b = 53.5;

System.out.println (% 10); // 3

System.out.println (b% 10); //3.5

}

}

2) Операторы отношения
  • <
  • <=
  • > =
  • ==
  • ! =

Эти операторы сравнивают (проверяют связь) два значения и выдают в качестве результата логическое значение. В Java логическое (логическое) значение может быть истинным или ложным (в C эти логические значения представлены 1 и 0).

Пример:

  • 13> 10 верно
  • 13 <10 ложно
  • 13 <= 10 ложно
  • 13> = 10 ложно
  • 13 == 10 ложно
  • 13! = 10 верно
  • 13 <13 ложно
  • 13> 13 ложно
  • 13 == 13 верно
  • 13 <= 13 верно
  • 13> = 13 верно
  • 13! = 13 ложно
  • ‘A’ == 65 верно
  • ‘0’ == 48 верно
  • ‘2’ == 2 ложно

Пример №1 Программа для операторов отношения на Java:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

14

18

19

20

21

22

23

24

25

26

27

28

29

30

34

class RelationalBasics

{

public static void main (String args [])

{

System. out.println (13> 10); // верно

System.out.println (13 <= 10); // верно

System.out.println (13> = 10); // верно

System.out.println (13 == 10); // ложь

System.out.println (13! = 10); // правда

System.out.println (13> 13); // ложь

System.out.println (13> = 13); // верно

System.out.println (13 <= 13); // верно

System.out.println (13 == 13); // верно

System.out.println (13! = 13); // ложь

System.out.println (‘A’ == 65); // истинное значение ascii для ‘A’равно 65

System.out.println (‘ 0 ‘== 48); // истинное значение ascii для’0’ равно 48

System.out.println (‘2’ == 2); // ложное значение ascii для ‘2’ равно 50

}

}

3) Логические операторы
  • && логический И
  • || логическое ИЛИ!
  • ! логическое НЕ

Логические операторы Java также приводят к булевым значениям . Они используются для проверки «нескольких логических значений» как одной единицы. Предположим, снять некоторую сумму денег в банкомате; у нас должна быть карта, знать PIN-код и у нас должен быть достаточный баланс в банке.

В этом примере все три условия (наличие карты, знание PIN-кода, наличие баланса) должны выполняться для выполнения вывода. При написании программы для этой цели мы пишем такой оператор:

if (cardAvailability == true && validPin == true && balance> = requiredAmount)

Здесь мы объединили «3 условия» , используя && .Когда нам нужно, чтобы все условия выполнялись, мы объединяем их с && .

В случае, если у нас есть ситуация, когда любое из условий является достаточным для выполнения, мы объединяем условия (выражения), используя || .

Предположим, что если мы хотим выполнить операцию, когда пользователь ввел ”x“ в нижнем или верхнем регистре, мы можем написать такой оператор, как

если (givenValue == ’x’ || givenValue == ’X’)

иногда нам нужно инвертировать (перевернуть) логическое значение выражения. В этом случае ! может быть использован.

Таблица истинности для логических операторов Java:

ехр1 ехр2 ехр1 && ехр2 ехр1 || exp2! exp1! ехр2

правда правда правда правда ложь ложь

истина ложь ложь истина ложь истина

ложь правда ложь правда правда ложь

ложь ложь ложь ложь правда правда

Примеры программ №1: Логические операторы Java

1

2

3

4

5

6

7

8

9

10

11

12

13

14

14

18

19

20

21

22

23

24

25

26

27

28

29

30

34

35

36

class LogicalOperatorBasics

{

public static void main (String args [])

{

System. out.println (истина || истина); // правда

System.out.println (true || false); // истина

System.out.println (false || true); // верно

System.out.println (false || false); // ложь

System.out.println (true && true); // истина

System.out.println (true && false); `// ложь

System.out.println (false && true); // ложь

System.out.println (ложь && ложь); // ложь

System.out.println (! true); // ложь

System.out.println (! false); // правда

System.out.println (13> 10 || 13 <10); // истина (истина || ложь)

System.out.println (13> 10 && 13 <10); // ложь (true && false)

System.out.println (! 13> 10); // ошибка

System.out.println (! (13 == 10)); // истина! (ложь)

}

}

3) Условный оператор

У нас есть специальный оператор, который работает на основе истинности условия. Этот оператор Java известен как условный оператор . Этот оператор содержит 3 операнда , поэтому он также известен как троичный оператор .

Чтобы понять, сначала нам нужно обсудить известную операцию, например ”a = 10 + 20; « в этом выражении, результат 10 + 20 присваивается » a «.Точно так же в условной операции, если у нас есть выражение типа a = 10 == 20? 30: 40, результат 10 == 20? 30: 40 будет присвоен «a».

В этом выражении 10 == 20 — первый операнд, 30 — второй операнд, а 40 — третий операнд. Символ ? помещается между первым и вторым операндами, а символ «:» помещается между вторым и третьим операндами.

Фактический результат (значение) выражения — это либо второй операнд, либо третий операнд.

Это решение (второе или третье) принимается на основе первого операнда, который дает в результате истинное или ложное значение.

Если результатом является истина, результатом будет второй операнд, а если результатом будет ложь, то третий операнд будет результатом. В нашем примере 10 == 20 ложно, поэтому результатом будет третий операнд (40).

Значит, значение 40 присваивается «a».

Точно так же, если мы возьмем выражение a = 25 <40? 123: 456, тогда второй операнд (123) будет назначен на «a», так как результат условия (первый операнд) истинно.

Пример:

  • 16 == 16? 13:10 результат будет 13
  • 16! = 16? 13:10 результат будет 10

В этой операции второй и третий операнды должны быть одного типа.

Пример № 1 для условного:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

14

14

18

19

20

21

22

class ConditionalOperationExample

{

public static void main (String args [])

{

int a = 1;

Система. out.println ((a == 1)? true: false); // правда

System.out.println ((a == 0)? true: false); // ложь

System.out.println (true? 1: 2); // 1

System.out.println (ложь? 1: 2); // 2

System.out.println ((1 <2)? 1: 2); // 1

System.out.println ((1> 2)? 1: 2); // 2

}

}

Пример № 2: Условный оператор Java

class ConditionalOperationExample1

{

public static void main (String args [])

{

int a = 1, b = 2, big;

большой = a> b? A: b;

Система.out.println («большее значение 1 и 2 =» + большой); // большее значение 1 и 2 равно 2

}

}

4) Операторы присвоения
  • =
  • + =
  • — =
  • * =
  • / =
  • % =
  • << =
  • >> =
  • >>> =
  • & =
  • | =
  • ^ =

Когда мы выполняем какую-либо операцию, обычно мы присваиваем результат выражения переменной. Для этого мы используем обычное присвоение (=).

Пример:

  • а = 10;
  • а = 10 + 20;
  • а = 2 + 3 * 4-5;

Если мы хотим выполнить операцию с переменной и вернуть результат этой переменной, мы можем использовать ярлык (комбинированное присваивание) .

Например, если мы хотим написать выражение типа ”a = a + b; « то, что мы хотим, — это добавить a и b, а результат снова поместить в a.

Точно так же мы можем захотеть выполнить Java-операцию, например length = length * 3 или currentValue = currentValue + exp1 * exp2; во всех этих случаях мы можем использовать комбинированные java-операторы присваивания.

Пример назначения операторов Java:

  • а = а + b; >>> можно записать как a + = b;
  • длина = длина * 3; >> можно записать как длина * = 3;
  • ”currentValue = currentValue + exp1 * exp2 может быть записано как currentValue + = exp1 * exp2; “
  • n = n / 10; >> можно записать как n / = 10;
  • val = val >> n; >> можно записать как val >> = n;
  • а = а и б; >> можно записать как a & = b;

Пример программы Java для присвоения:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

14

18

19

20

21

22

23

24

25

26

27

28

29

30

34

35

36

37

38

39

40

41

42

43

44

45

46

47

51

52

53

54

55

56

57

58

59

60

61

62

63

9 0005 64

65

class AssignmentOperatorBasics

{

public static void main (String args [])

{

int a = 2;

а = а + 4;

Система. out.println (а); // 6

a + = 4;

System.out.println (а); // 10

a = 16;

а = а-4;

System.out.println (а); // 12

a = 16;

а- = 4;

System.out.println (а); // 12

a = 26;

а = а * 4;

Система.out.println (а); // 104

a = 26;

а * = 4;

System.out.println (а); // 104

a = 36;

а = а / 4;

System.out.println (а); // 9

a = 36;

а / = 4;

System.out.println (а); // 9

a = 46;

a = a% 4;

Система.out.println (а); // 2

a = 46;

a% = 4;

System.out.println (а); // 2

}

5) Операторы группировки

  • () оператор отделения
  • [] оператор массива
  • . оператор ссылки (символ точки)

Оператор подразделения ()::

() можно использовать для группировки набора элементов как одного блока.Когда у нас есть выражение типа ”2 + 3 * 4“ , согласно нормальным приоритетам сначала выполняется 3 * 4, а результат (12) добавляется к 2.

Если мы сгруппируем 2 + 3 как одну единицу и напишем то же выражение, например (2 + 3) * 4, то эта единичная единица (результат 5) умножится на 4 и даст 20.

Пример для оператора установки:

  • a + b / ((c — d) * (e + f))% г
  • (3 + 4) / (5 + 6)
  • (-b + Math.sqrt (b * b-4 * a * c)) / (2 * a)

Оператор массива []:

»[]« используются для работы с массивами.

Этот набор квадратных скобок используется для создания ссылки на массив или для доступа к элементу массива.

Пример оператора массива:

  • int a []; при создании ссылки на массив
  • int a []; при создании ссылки на массив
  • a = новый int [10]; при создании объекта массива
  • х = а [2]; при доступе к элементу массива. е2! e2

    правда правда правда правда ложь ложь

    истина ложь ложь истина правда истина

    ложь правда ложь правда правда ложь

    ложь ложь ложь ложь ложь правда

    Эти операторы Java работают с отдельными битами чисел.Эти операторы java могут применяться только к целочисленному типу данных .

    T Он не может применяться к данным типа float, double и boolean. Эти операторы используются для маскировки.

    »&« используется для выполнения побитовой операции И над двумя заданными значениями.

    Если мы хотим выполнить 25 и 78, тогда операция И выполняется над соответствующими битами чисел, и выдается результат.

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    14

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    class BitwiseOperation

    {

    public static void main (String args [])

    {

    // побитовое И

    System. out.println (0 & 0); // 0

    System.out.println (0 & 1); // 0

    System.out.println (1 & 0); // 0

    System.out.println (1 & 1); // 1

    // поразрядное ИЛИ

    System.out.println (0 | 0); // 0

    System.out.println (0 | 1); // 1

    System.out.println (1 | 0); // 1

    System.1); // 0

    // побитовое ОТРИЦАНИЕ

    System.out.println (~ 1); // — 2

    System.out.println (~ 0); // — 1

    }

    }

    Пример для AND:

    class BitwiseOperationAND

    {

    public static void main (String args [])

    {

    System.out.println (25 и 78); // 8

    System.out.println (100 & 25); // 0

    System.out.println (125 & 49); // 49

    }

    }

    • 25 -> 00000000 00000000 00000000 00011001
    • 78 -> 00000000 00000000 00000000 01001110
    • 00000000 00000000 00000000 00001000 -> 8
    • Так 25 и 78 это 8

    Пример для OR:

    class BitwiseOperationOR

    {

    public static void main (String args [])

    {

    System. out.println (25 | 78); // 95

    System.out.println (100 | 25); // 125

    System.out.println (125 | 49); // 125

    }

    }

    Аналогично, 25 | 78 это

    Пример:

    • 25 -> 00000000 00000000 00000000 00011001
    • 78 -> 00000000 00000000 00000000 01001110
    • 00000000 00000000 00000000 01011111 -> 95

    Пример для XOR:

    class BitwiseOperationXOR

    {

    public static void main (String args [])

    {

    System.78 это 87

    Пример:

    • 25 -> 00000000 00000000 00000000 00011001
    • 78 -> 00000000 00000000 00000000 01001110
    • 00000000 00000000 00000000 01010111 -> 87

    Пример побитовой операции сдвиг влево:

    class BitwiseOperationLEFTSHIFT

    {

    public static void main (String args [])

    {

    System. out.println (25 << 3); // 200

    System.out.println (2 << 5); // 64

    System.out.println (2 << 3); // 16

    }

    }

    << используется для сдвига каждого бита влево на указанное количество ячеек. В примере 25 его битовая комбинация (занимающая 4 байта) будет 00000000 00000000 00000000 00011001.

    Если мы сдвинем каждый бит на 3 позиции влево, то биты станут 00000000 00000000 00000000 11001000.Когда мы выполняем сдвиг влево для местоположений «n» , n бит на левом конце будет удалено, а n 0 будет добавлено на правом конце.

    • 00000000 00000000 00000000 00011001 — 25
    • 00000000 00000000 00000000 11001000 — 200
    • Итак, мы можем сказать, что 25 << 3 - это 200
    • Аналогично, 6 << 9 будет 3072
    • 00000000 00000000 00000000 00000110 — 6
    • 00000000 00000000 00001100 00000000 — 3072

    Вместо того, чтобы выполнять все эти вычисления путем записи битов, мы можем найти значение с помощью формулы

    x << y как x * 2 y

    Пример:

    • 25 << 3 как 25 * 2 3 равно 200
    • 6 << 9 как 6 * 2 9 равно 3072

    Пример для сдвига вправо:

    class BitwiseOperationRIGHTSHIFT

    {

    public static void main (String args [])

    {

    System. out.println (25 >> 3); // 3

    System.out.println (2 >> 5); // 0

    System.out.println (2 >> 3); // 0

    }

    }

    > также ведет себя так же, как <<, и разница заметна. Это (>>) сдвигает биты вправо на указанное количество ячеек.

    Если мы сдвинемся на n позиций, крайние правые n битов будут удалены, и n нулей будут добавлены к положительным числам, а единицы будут добавлены к отрицательным числам на левом конце.Даже для этого мы можем применить формулу

    Пример:

    • 25 >> 3 как 25/2 3 это 3
    • 6 >> 9 как 6/2 9 равно 0
    • 500 >> 2 как 500/2 2 равно 125
    • -500 >> 2, поскольку -500/22 равно -125
    • -15 >> 1 как -15/2 1 равно -8 (да, это -8, но не -7)
    • -5 >> 1 как -5/2 1 равно -3
    • 5 >> 1, поскольку 5/21 равно 2 (да, 5 положительно, поэтому результат равен 2)

    >>> похоже на >>, но только нули добавляются слева как для положительных, так и для отрицательных чисел.

    7) Операторы увеличения и уменьшения

    • ++

    Они используются для увеличения / уменьшения значения на 1. Обычно для увеличения значения в переменной x на 1 мы используем такой оператор, как x = x + 1;

    То же утверждение можно записать как x + = 1; также с использованием комбинированного оператора присваивания. В качестве альтернативы мы можем использовать x ++ или ++ x для выполнения того же самого. Аналогично x = x-1; также можно записать как –x или x–.

    Эти операторы Java следует применять только к переменным.Их нельзя применять к константам.

    Пример:

    • a ++ действителен
    • 5 ++ не действует
    • a ++++ недействителен
    • a ++ + a ++ действительно

    Как правило, все остальные унарные Java-операторы используются только в нотации префикса . Но эти унарные операторы Java можно использовать как в префиксной, так и в постфиксной нотации.

    Пример:

    • + a ~ a -a! A действительны
    • а + а ~ а- а! не действительны
    • a ++ ++ a a– –a действительны

    Есть небольшая разница между работой префиксной и постфиксной нотации.

    Когда в префиксной нотации используется ++ ; сначала выполняется приращение переменной, а затем полученное значение будет использовано в выражении.

    Eg1 : int a = 5;

    int b = ++ a; , здесь »a« сначала увеличивается (так что становится 6), а затем 6 присваивается b.

    Eg2 : int x = 5;

    Int y = ++ x + ++ x; здесь, с первым ++ x, увеличивается до 6, а вместо этого ++ x используется 6.Со вторым ++ x, x увеличивается до 7, и вместо него используется 7.

    Итак, к моменту завершения обеих операций ++ выражение станет y = 6 + 7; так y становится 13.

    Когда ++ используется в постфиксной нотации, сначала в выражении используется исходное значение (до приращения), затем будет происходить приращение.

    Eg1: int a = 5;

    Int b = a ++; здесь исходное значение a (5) используется как значение выражения a ++, а затем увеличивается на единицу.

    Значит, b присваивается значение 5, а значение a будет 6.

    Eg2: int x = 5;

    Инт у = х ++ + х ++; здесь, с первым x ++, значение выражения становится 5, а x увеличивается до 6. При втором x ++ значение выражения будет 6 (к тому времени x равно 6), а x увеличивается до 7.

    Таким образом, выражение станет y = 5 + 6; поэтому 11 присваивается y.

    Пример № 1:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    14

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    31

    9000

    class IncDecOperation

    {

    public static void main (String args [])

    {

    int x = 1;

    Система. out.println (x); // 1

    x ++;

    System.out.println (x); // 2

    ++ x;

    System.out.println (x); // 3

    int y = 3;

    System.out.println (y); // 3

    —y:

    System.out.println (y); // 2

    y—;

    Система.out.println (y); // 1

    }

    Пример № 2:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    14

    14

    18

    19

    20

    21

    22

    23

    class IncDecOperation

    {

    public static void main (String args [])

    {

    int x = 1;

    Система.out.println (x); // 1

    System.out.println (++ x); // 2

    System. out.println (x ++); // 2 sop (x = 2), тогда x становится 3

    System.out.println (- x); // 2

    System.out.println (x—); // 2 sop (x = 2), x становится 1

    System.out.println (x); // 1

    }

    }

    Пример № 3:

    class IncDecOperation

    {

    public static void main (String args [])

    {

    int x = 5;

    интервал y = x ++ + x ++ + x ++; // y = 5 + 6 + 7; x = 8

    Система.out.println (x); // 8

    System.out.println (y); // 18

    }

    }

    В зависимости от количества операндов, связанных с оператором, делятся на 3 типа

    1. Унарные операторы
    2. Двоичный ——–
    3. Тройной ——–

    Работа с одиночным операндом называется унарным.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *