Přejít k navigační liště

Zdroják » Zprávičky » Pozor na logické operátory and a or v Ruby

Pozor na logické operátory and a or v Ruby

Zprávičky Různé

Nálepky:

Jazyk Ruby má, stejně jako jiné jazyky, možnost použít logické operátory OR a AND. V jazycíc typu C se tyto operátory zapisují pomocí || nebo &&, v jiných jako or a and. V Ruby můžete použít oba tvary, což začátečníky svádí k tomu, že je volně zaměňují, což není zcela v pořádku. Mezi slovní a symbolickou variantou jsou totiž drobné rozdíly. Zaměřuje se na ně článek Using „and“ and „or“ in Ruby.

Zdroj: Virtuous Code

Komentáře

Odebírat
Upozornit na
guest
3 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
Zobrazit všechny komentáře
v6ak

Vypadá to jen na rozdílnou prioritu. Píší tam, že to pochází z Perlu, což by asi vysvětlovalo, že je to podobně i v PHP.

kamk

Pro logické „a, anebo“ se používá and, or:
if (has_cars or has_trucks) and has_parking

Naproti tomu && a || pracují jako binární and, or, t.j. hodí na přiřazování:
places = parking_avail && (trucks_places || cars_places)
Zde je u Ruby pěkný přiřazení hodnoty pokud je proměna prázdná (nil):
x ||= 10
(což je ve zkratce: x = x || 10)

leumas

Aj ked sa o tejto ficure velmi nevie a niektore blbsie kompilatory ju nepodporuju.

Velký konflikt mezi AI firmami a Pentagonem

AI
Komentáře: 0
Americké firmy vyvíjející umělou inteligenci se ocitají uprostřed historického sporu s vládou. Konflikt mezi Anthropic a Pentagonem ukazuje, jak tenká je hranice mezi etickou autonomií firem a národní bezpečností - a jaké důsledky může mít označení „supply chain risk“ pro celou technologickou branži.

Jak Cloudflare během jednoho týdne s pomocí AI přepsal Next.js

Cloudflare přišel s experimentálním projektem vinext - alternativní implementací API frameworku Next.js postavenou na Vite. Nejde o adaptér ani překladač build výstupu. Jde o samostatnou reimplementaci, která zachovává veřejné rozhraní Next.js, ale běží nad jiným nástrojem a jiným runtime. Projekt navíc vznikl během jediného týdne a zásadní roli v jeho vývoji hrála umělá inteligence. Výsledek ukazuje nejen možné zrychlení buildů a menší výsledné balíčky, ale i proměnu samotného způsobu, jakým mohou frameworky vznikat.