- ARMv8架构
weizhideshenghuo
ARMarm
ARMarchitecturePE(processingelement):采取ARM架构的处理器RISC(reducedinstructionsetcomputer):精简指令集架构:AArch64:64位架构,地址和指令都是64位寄存器提供31个64位通用寄存器,X30用作过程链接寄存器提供1个64位程序计数器PC(programcounter),栈指针SPs(stackpointers),异常
- Python 之 指针(Pointers)的理解与应用
ぃ曦晔°
pythonjava前端
Python之指针(Pointers)的理解与应用1.变量与对象的引用关系2.可变对象与不可变对象3.模拟指针操作4.函数参数传递机制5.“空指针”“双指针”的详解和应用场景6.垃圾回收与引用计数7.应用场景在Python中,虽然没有显式的指针概念(如C/C++中的int*p),但所有变量本质上都是对对象的引用(类似于指针的抽象)。理解这一点对掌握Python的内存管理、参数传递和可变/不可变对象
- 力扣网C语言编程题:快慢指针来解决 “寻找重复数”
魏劭
C语言逻辑编程题算法c语言leetcode
一.简介上一篇文章解决力扣网上"查找重复数"的题目,提供了两种思路:哈希表和二分法。文章如下:力扣网C语言编程题:寻找重复数-CSDN博客本文提供另外两种解决思路:快慢指针和位运算。二.力扣网C语言编程题:快慢指针来解决“寻找重复数”解题思路三:(快慢指针)什么是快慢指针?快慢指针(FastandSlowPointers)是一种在链表或数组中高效检测环、查找中点或特定位置的算法技巧。其核心思想是使
- 影子栈指针是什么?
切糕师学AI
计算机体系结构嵌入式硬件
影子栈指针是什么?影子栈指针(ShadowedStackPointers)是ARMCortex-M处理器中用于高效中断处理和操作系统任务调度的核心硬件机制,尤其在支持特权级分离和双堆栈模式的架构中至关重要。以下是其技术原理和应用解析:⚙️一、核心概念背景问题中断发生时,CPU需保存当前任务上下文(寄存器状态)到栈中。若所有任务/中断共用主栈指针(MSP),会导致:中断嵌套时栈空间不可预测任务栈与中
- 【C++11】智能指针底层原理
m0_70998129
c++
1.简介C++11引入的智能指针(SmartPointers)是管理动态内存的工具,旨在自动释放不再使用的对象,防止内存泄漏。它们通过RAII(资源获取即初始化)技术封装原始指针,在对象生命周期结束时自动释放内存。C++11提供了三种主要的智能指针:2.RAII思想概述说明一下:智能指针是类对象,它们封装了原始指针,并提供了一种机制来自动管理和释放所指向的对象。那么这种机制是什么?就是我们接下来要
- 第49期:Codeforces-Round #774(Div.2)
Heptagonalwarrior
Codeforces算法
目录A.SquareCounting(tags:math;*800)B.QualityvsQuantity(tags:bruteforce;constructivealgorithms;greedy;sorting;twopointers;*800)C.FactorialsandPowersofTwo(tags:bitmasks;bruteforce;constructivealgorithms;
- 获取char*字符串指针指向的数组长度时,记得用strlen,而不是sizeof
爱串门的小马驹
C与C++c++字符串长度
一、示例说明区别1.1针对char*strlen和sizeof的区别用以下示例说明:#include#includeintmain(){charstr[]="Hello,World!";char*ptr=str;//使用sizeof计算ptr的大小(注意这里的陷阱)printf("Sizeofptr(pointersize):%zu\n",sizeof(ptr));//使用strlen计算ptr指
- 为什么elasticsearch配置文件JVM配置31G最佳
jiedaodezhuti
elasticsearchelasticsearchjvm大数据
Elasticsearch的JVM堆内存配置为32GB被视为最佳实践,主要基于以下综合技术原理和性能优化考量:1.JVM指针压缩机制优化内存效率当堆内存≤32GB时,JVM启用对象指针压缩(CompressedOrdinaryObjectPointers,COOP)。该技术使用32位偏移量替代64位指针,使32位指针能引用约40亿个对象(而非40亿字节),显著减少内存占用并提升CPU缓存效
- 【智能指针】一文带你入门Rust 智能指针
yezipi耶不耶
rust开发语言后端开源软件
Rust入门之智能指针本文源码博客站点什么是智能指针?指针是一个包含内存地址的变量的通用概念。Rust中最常见的指针就是引用,使用&作为标识,如&a,我们知道这是一个引用,指向a变量所表示的值。Rust中创建一个引用的行为称为借用(borrowing)。那么智能指针又是什么呢?智能指针(smartpointers)是一类数据结构,它们的表现类似指针,但是也拥有额外的元数据和功能。智能指针的概念起源
- 十一、引用与拷贝函数(References & the Copy-Constructor)
Wooden-Flute
c++
十一、引用与拷贝函数(References&theCopy-Constructor)11.1指针回顾(Reviewofpointers)指针可以保存一个地址。当你定义一个指针时,必须指定它所指向变量的类型,并且应该初始化它。示例:inta=0,b=0;int*ipa=&a;int*ipb=&b;有了一个已经初始化的指针,最基本的操作是使用它修改它所指向的值。C++允许将任何类型的指针赋值给一个vo
- c++内存神器智能指针
whoarethenext
c++mfc开发语言智能指针shared_ptr
C++智能指针:现代内存管理的基石在C++的编程实践中,内存管理一直是一个核心且富有挑战性的话题。传统的new和delete操作符虽然赋予了开发者极大的灵活性,但也带来了诸如内存泄漏(忘记delete)、悬空指针(对象已delete但指针仍在使用)等一系列问题。为了解决这些问题,C++标准库引入了智能指针(SmartPointers)的概念。智能指针是行为类似于指针的对象,但它们能够自动管理所指向
- More Effective C++ 学习笔记(1)
举头望太阳
MoreEffectiveC++c++指针编程语言
基础议题检索:pointers、references、casts(类型转换)、arrays(数组)、constructors(构造函数)条款1:仔细区别pointers和referencesreferences(*)和pointers(->)的差异?没有nullreferences【也就是一个引用必须总代表一个对象】//示例:使用引用指向空指针【非法操作】char*pc=0;//空指针char&r
- C++ std::atomic可以使用复杂类型(类和结构体)吗
流星雨爱编程
#C++进阶c++开发语言算法数据结构
目录1.引言2.std::atomic支持的复杂类型3.std::atomic与无锁4.如何使用std::atomic保护复杂类型4.1.使用互斥锁(Mutex)4.2.使用std::atomic_flag和自旋锁4.3.原子共享指针(AtomicSharedPointers)4.4.使用高级同步机制5.std::atomic和volatile的区别6.总结1.引言std::atomic是C++1
- 接雨水 Python 双指针 算法
qq3332129724(中职生)
算法python数据结构
fromfunctoolsimportlru_cacheclassSolution:deftrap(self,height):#defineapointersum1=left=0#Movetheleftpointertofindasquarelargerthanone.foriinrange(len(height)):ifheight[i]>=1:left=i#stoplookforthatisg
- pat学习笔记
丰锋ff
学习笔记算法
twopointers双指针给定一个递增的正整数序列和一个正整数M,求序列中的两个不同位置的数a和b,使得它们的和恰好为M,输出所有满足条件的方案。例如给定序列{1,2,3,4,5,6}和正整数M=8,就存在2+6=8和3+5=8成立。容易想到:使用二重循环枚举序列中的整数a和b,判断它们的和是否为M,如果是,输出方案,如果不是,则继续枚举。代码如下,时间复杂度为O(n^2)。for(inti=0
- chapter 4: Smart Pointers_《Effective Modern C++》notes
郭涤生
c/c++c++开发语言笔记
SmartPointersItem18:`std::unique_ptr`forExclusiveOwnershipItem19:`std::shared_ptr`forSharedOwnershipItem20:`std::weak_ptr`forNon-OwningReferencesItem21:`make_unique`and`make_shared`Item22:PimplIdiomwi
- addPointers - overlap with incoming pointers 异常分析
惠(xi)斌
framework稳定性android
一.描述项目做老化测试,遇到systemserver重启,导致执行中间.报错信息:Buildfingerprint:'Dish/Spence/T715DS:15/AP3A.240905.015.A2/1732765343:user/release-keys'Revision:'0'ABI:'arm64'Timestamp:2024-12-0510:45:07.201198654+0800Proce
- SHELL32!ILCombine函数分析之连接两个idl
sitelist
nt4源代码分析ILCombine
SHELL32!ILCombine函数分析之连接两个idl第一部分:STDAPI_(LPITEMIDLIST)ILCombine(LPCITEMIDLISTpidl1,LPCITEMIDLISTpidl2){//LetmepassinNULLpointersif(!pidl1){if(!pidl2){returnNULL;}returnILClone(pidl2);}elseif(!pidl2){
- Rust中的智能指针:Box<T> Rc<T> Arc<T> Cell<T> RefCell<T> Weak<T>
supeerzdj
rust算法网络
Rust中的智能指针是什么智能指针(smartpointers)是一类数据结构,是拥有数据所有权和额外功能的指针。是指针的进一步发展指针(pointer)是一个包含内存地址的变量的通用概念。这个地址引用,或”指向”(pointsat)一些其他数据。引用以&符号为标志并借用了他们所指向的值。除了引用数据没有任何其他特殊功能。它们也没有任何额外开销,所以在Rust中应用得最多。智能指针是Rust中一种
- 【编译、链接、装载五】编译器后端——gcc生成的汇编代码
郑同学的笔记
编译和链接汇编linux汇编代码gcc反汇编
【编译和链接五】编译器后端——gcc到汇编一.栈回溯1.framepointers2.debug_frame(DWARF)3.eh_frame(LSB)4CFIdirectives5、关于.cfi结论5.1、CFI伪指令二、寄存器三、helloworld汇编1、指令解释1.1.cfi伪指令1.2汇编指令四、printf和puts四、如何编译不带:调试用的调用堆栈的五、汇编语法其他、一.栈回溯Unw
- 双指针思想
六七_Shmily
算法题算法双指针
双指针(TwoPointers)是一种常用的算法思想,通过使用两个指针(通常是下标或迭代器)在数组、链表或字符串中协同工作,高效解决一些问题。双指针的核心思想是通过指针的移动来减少时间复杂度,通常将暴力解法的O(n²)优化为O(n)。1.双指针的常见形式双指针的常见形式包括:左右指针:两个指针从两端向中间移动。适用于有序数组或字符串的问题(如两数之和、反转字符串等)。快慢指针:两个指针以不同的速度
- Golang面试题
御风行云天
面试题大全golangjavajvm面试
Golang面试题1.Golang语言基础1.1解析Go语言的特性和设计哲学Go语言的主要特性设计哲学1.2讨论Go语言的类型系统内建类型(Built-InTypes)类型声明(TypeDeclarations)接口(Interfaces)类型断言和类型转换指针(Pointers)类型推断(TypeInference)零值(ZeroValues)方法(Methods)1.3描述Go语言中的控制结构
- leetcode116. 填充每个节点的下一个右侧节点指针
Chevy_cxw
c/c++算法设计
题目链接:https://leetcode-cn.com/problems/populating-next-right-pointers-in-each-node/题意:给定一个完美二叉树,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下:structNode{intval;Node*left;Node*right;Node*next;}填充它的每个next指针,让这个指针指向其
- 面经-C语言——指针相关概念总结
tt555555555555
面经C语言学习笔记c语言嵌入式
C语言指针相关概念总结:指针数组、数组指针、指针常量、常量指针、指向常量的常量指针、指针函数和函数指针1.指针数组(ArrayofPointers)2.数组指针(PointertoanArray)3.指针常量(PointerConstant)4.常量指针(PointertoaConstant)5.指向常量的常量指针(PointertoaConstantConstant)6.指针函数(Pointer
- C++游戏开发深度解析
python算法(魔法师版)
cc++开发语言
引言在本篇文章中,我们将深入探讨C++在游戏开发中的应用,包括内存管理、面向对象编程(OOP)、模板使用等,并通过实际代码示例来帮助理解。内存管理与智能指针cpp深色版本#include#include//ForsmartpointersclassGameObject{public:GameObject(){std::coutgameObject=std::make_unique();gameOb
- android模拟点击
taopi2024
Androidandroid
模拟点击两套方案:1、使用InstrumentationnewThread(()->{Instrumentationinst=newInstrumentation();longcurTime=SystemClock.uptimeMillis();inst.sendPointerSync(MotionEvent.obtain(curTime,curTime,MotionEvent.ACTION_DO
- LeetCode Top Interview 150 - Linked List
everecursion
leetcode算法职场和发展开源python数据结构
Alinkedlistisalineardatastructureconsistingofaseriesofnodes,whereeachnodecontainsdataandapointertothenextnode(inasinglylinkedlist)orbothpointerstothenextnodeandthepreviousnode(inadoublylinkedlist).The
- 【0394】Postgres内核 (checkpoint)执行一个 checkpoint ④
内核之道
#▲进阶篇CHECKPOINT执行checkpoint
文章目录1.获取requestflags1.1发出警告1.2获取XLOGinsertlocation2.开始执行一个checkpoint1.获取requestflags以原子操作的方式获取请求标志,以明确我们应当执行何种类型的checkpoint,并增加启动计数器,以表明我们已开始新的检查点。由于CheckpointerShmem中的ckpt_flags为0,所以或运算之后,flags值未改变(f
- C++新特性以及应用场景
平凡而伟大(心之所向)
编程语言c++开发语言
C++的新特性可以大致分为以下几类:模板(Templates):提高代码复用性,包括模板函数和模板类。异常处理(ExceptionHandling):提供了一套结构化的错误处理机制。异步编程(ConcurrencyandMultithreading):提供了线程和原子操作等工具。智能指针(SmartPointers):自动管理内存,如std::unique_ptr和std::shared_ptr。
- Leetcode 盛水最多的容器
Wils0nEdwards
leetcode算法职场和发展
算法思路:Explanation:Two-pointertechnique:Startwithtwopointers,oneatthebeginning(left)andoneattheend(right)oftheheightarray.Calculatetheareaformedbetweenthetwoverticallines.Theareaiscalculatedas:Area=(rig
- Java实现的简单双向Map,支持重复Value
superlxw1234
java双向map
关键字:Java双向Map、DualHashBidiMap
有个需求,需要根据即时修改Map结构中的Value值,比如,将Map中所有value=V1的记录改成value=V2,key保持不变。
数据量比较大,遍历Map性能太差,这就需要根据Value先找到Key,然后去修改。
即:既要根据Key找Value,又要根据Value
- PL/SQL触发器基础及例子
百合不是茶
oracle数据库触发器PL/SQL编程
触发器的简介;
触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行。因此触发器不需要人为的去调用,也不能调用。触发器和过程函数类似 过程函数必须要调用,
一个表中最多只能有12个触发器类型的,触发器和过程函数相似 触发器不需要调用直接执行,
触发时间:指明触发器何时执行,该值可取:
before:表示在数据库动作之前触发
- [时空与探索]穿越时空的一些问题
comsci
问题
我们还没有进行过任何数学形式上的证明,仅仅是一个猜想.....
这个猜想就是; 任何有质量的物体(哪怕只有一微克)都不可能穿越时空,该物体强行穿越时空的时候,物体的质量会与时空粒子产生反应,物体会变成暗物质,也就是说,任何物体穿越时空会变成暗物质..(暗物质就我的理
- easy ui datagrid上移下移一行
商人shang
js上移下移easyuidatagrid
/**
* 向上移动一行
*
* @param dg
* @param row
*/
function moveupRow(dg, row) {
var datagrid = $(dg);
var index = datagrid.datagrid("getRowIndex", row);
if (isFirstRow(dg, row)) {
- Java反射
oloz
反射
本人菜鸟,今天恰好有时间,写写博客,总结复习一下java反射方面的知识,欢迎大家探讨交流学习指教
首先看看java中的Class
package demo;
public class ClassTest {
/*先了解java中的Class*/
public static void main(String[] args) {
//任何一个类都
- springMVC 使用JSR-303 Validation验证
杨白白
springmvc
JSR-303是一个数据验证的规范,但是spring并没有对其进行实现,Hibernate Validator是实现了这一规范的,通过此这个实现来讲SpringMVC对JSR-303的支持。
JSR-303的校验是基于注解的,首先要把这些注解标记在需要验证的实体类的属性上或是其对应的get方法上。
登录需要验证类
public class Login {
@NotEmpty
- log4j
香水浓
log4j
log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, HTML, DATABASE
#log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, ROLLINGFILE, HTML
#console
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4
- 使用ajax和history.pushState无刷新改变页面URL
agevs
jquery框架Ajaxhtml5chrome
表现
如果你使用chrome或者firefox等浏览器访问本博客、github.com、plus.google.com等网站时,细心的你会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变。并且能够很好的支持浏览器前进和后退。
是什么有这么强大的功能呢?
HTML5里引用了新的API,history.pushState和history.replaceState,就是通过
- centos中文乱码
AILIKES
centosOSssh
一、CentOS系统访问 g.cn ,发现中文乱码。
于是用以前的方式:yum -y install fonts-chinese
CentOS系统安装后,还是不能显示中文字体。我使用 gedit 编辑源码,其中文注释也为乱码。
后来,终于找到以下方法可以解决,需要两个中文支持的包:
fonts-chinese-3.02-12.
- 触发器
baalwolf
触发器
触发器(trigger):监视某种情况,并触发某种操作。
触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)
语法:
create trigger triggerName
after/before 
- JS正则表达式的i m g
bijian1013
JavaScript正则表达式
g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。 i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写。 m:表示
- HTML5模式和Hashbang模式
bijian1013
JavaScriptAngularJSHashbang模式HTML5模式
我们可以用$locationProvider来配置$location服务(可以采用注入的方式,就像AngularJS中其他所有东西一样)。这里provider的两个参数很有意思,介绍如下。
html5Mode
一个布尔值,标识$location服务是否运行在HTML5模式下。
ha
- [Maven学习笔记六]Maven生命周期
bit1129
maven
从mvn test的输出开始说起
当我们在user-core中执行mvn test时,执行的输出如下:
/software/devsoftware/jdk1.7.0_55/bin/java -Dmaven.home=/software/devsoftware/apache-maven-3.2.1 -Dclassworlds.conf=/software/devs
- 【Hadoop七】基于Yarn的Hadoop Map Reduce容错
bit1129
hadoop
运行于Yarn的Map Reduce作业,可能发生失败的点包括
Task Failure
Application Master Failure
Node Manager Failure
Resource Manager Failure
1. Task Failure
任务执行过程中产生的异常和JVM的意外终止会汇报给Application Master。僵死的任务也会被A
- 记一次数据推送的异常解决端口解决
ronin47
记一次数据推送的异常解决
需求:从db获取数据然后推送到B
程序开发完成,上jboss,刚开始报了很多错,逐一解决,可最后显示连接不到数据库。机房的同事说可以ping 通。
自已画了个图,逐一排除,把linux 防火墙 和 setenforce 设置最低。
service iptables stop
- 巧用视错觉-UI更有趣
brotherlamp
UIui视频ui教程ui自学ui资料
我们每个人在生活中都曾感受过视错觉(optical illusion)的魅力。
视错觉现象是双眼跟我们开的一个玩笑,而我们往往还心甘情愿地接受我们看到的假象。其实不止如此,视觉错现象的背后还有一个重要的科学原理——格式塔原理。
格式塔原理解释了人们如何以视觉方式感觉物体,以及图像的结构,视角,大小等要素是如何影响我们的视觉的。
在下面这篇文章中,我们首先会简单介绍一下格式塔原理中的基本概念,
- 线段树-poj1177-N个矩形求边长(离散化+扫描线)
bylijinnan
数据结构算法线段树
package com.ljn.base;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
/**
* POJ 1177 (线段树+离散化+扫描线),题目链接为http://poj.org/problem?id=1177
- HTTP协议详解
chicony
http协议
引言
- Scala设计模式
chenchao051
设计模式scala
Scala设计模式
我的话: 在国外网站上看到一篇文章,里面详细描述了很多设计模式,并且用Java及Scala两种语言描述,清晰的让我们看到各种常规的设计模式,在Scala中是如何在语言特性层面直接支持的。基于文章很nice,我利用今天的空闲时间将其翻译,希望大家能一起学习,讨论。翻译
- 安装mysql
daizj
mysql安装
安装mysql
(1)删除linux上已经安装的mysql相关库信息。rpm -e xxxxxxx --nodeps (强制删除)
执行命令rpm -qa |grep mysql 检查是否删除干净
(2)执行命令 rpm -i MySQL-server-5.5.31-2.el
- HTTP状态码大全
dcj3sjt126com
http状态码
完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用request
- asihttprequest上传图片
dcj3sjt126com
ASIHTTPRequest
NSURL *url =@"yourURL";
ASIFormDataRequest*currentRequest =[ASIFormDataRequest requestWithURL:url];
[currentRequest setPostFormat:ASIMultipartFormDataPostFormat];[currentRequest se
- C语言中,关键字static的作用
e200702084
C++cC#
在C语言中,关键字static有三个明显的作用:
1)在函数体,局部的static变量。生存期为程序的整个生命周期,(它存活多长时间);作用域却在函数体内(它在什么地方能被访问(空间))。
一个被声明为静态的变量在这一函数被调用过程中维持其值不变。因为它分配在静态存储区,函数调用结束后并不释放单元,但是在其它的作用域的无法访问。当再次调用这个函数时,这个局部的静态变量还存活,而且用在它的访
- win7/8使用curl
geeksun
win7
1. WIN7/8下要使用curl,需要下载curl-7.20.0-win64-ssl-sspi.zip和Win64OpenSSL_Light-1_0_2d.exe。 下载地址:
http://curl.haxx.se/download.html 请选择不带SSL的版本,否则还需要安装SSL的支持包 2. 可以给Windows增加c
- Creating a Shared Repository; Users Sharing The Repository
hongtoushizi
git
转载自:
http://www.gitguys.com/topics/creating-a-shared-repository-users-sharing-the-repository/ Commands discussed in this section:
git init –bare
git clone
git remote
git pull
git p
- Java实现字符串反转的8种或9种方法
Josh_Persistence
异或反转递归反转二分交换反转java字符串反转栈反转
注:对于第7种使用异或的方式来实现字符串的反转,如果不太看得明白的,可以参照另一篇博客:
http://josh-persistence.iteye.com/blog/2205768
/**
*
*/
package com.wsheng.aggregator.algorithm.string;
import java.util.Stack;
/**
- 代码实现任意容量倒水问题
home198979
PHP算法倒水
形象化设计模式实战 HELLO!架构 redis命令源码解析
倒水问题:有两个杯子,一个A升,一个B升,水有无限多,现要求利用这两杯子装C
- Druid datasource
zhb8015
druid
推荐大家使用数据库连接池 DruidDataSource. http://code.alibabatech.com/wiki/display/Druid/DruidDataSource DruidDataSource经过阿里巴巴数百个应用一年多生产环境运行验证,稳定可靠。 它最重要的特点是:监控、扩展和性能。 下载和Maven配置看这里: http
- 两种启动监听器ApplicationListener和ServletContextListener
spjich
javaspring框架
引言:有时候需要在项目初始化的时候进行一系列工作,比如初始化一个线程池,初始化配置文件,初始化缓存等等,这时候就需要用到启动监听器,下面分别介绍一下两种常用的项目启动监听器
ServletContextListener
特点: 依赖于sevlet容器,需要配置web.xml
使用方法:
public class StartListener implements
- JavaScript Rounding Methods of the Math object
何不笑
JavaScriptMath
The next group of methods has to do with rounding decimal values into integers. Three methods — Math.ceil(), Math.floor(), and Math.round() — handle rounding in differen